2015-12-08 26 views
-4

創建填充了JSON數據ListView,我已經包括OnItemClickListener通過Intent打開一個新的Activity。我想要做的是根據我在ListView中點擊的項目生成新的Activity數據。我曾經如何從ListView控件傳遞JSON數據到新的活動

例如,如果我在字段名稱JohnDoe中點擊ListView的項目,我想從另一個JSON數據文件的信息生成頁面。具體的例子就像Google Play商店。

我點擊一些應用程序,它會打開一個頁面,其中包含有關該應用程序的填充信息。

編輯:我已經嘗試過傳遞對象鏈接,它不工作。我在班上有getter和setter,然後在我的主課堂裏解析它。

這裏舉例:

JSONObject obj = response.getJSONObject(i); 
            Movie movie = new Movie(); 
            movie.setTitle(obj.getString("title")); 
+0

你的方法在哪裏?太舊的問題 –

+1

http://stackoverflow.com/questions/5082122/passing-jsonobject-into-another-activity請參閱此鏈接 – Beena

+0

我試圖從推薦鏈接,但它不工作。所以這就是爲什麼我把這個問題的詳細解釋。如果你還沒有聽說過我不得不說更多的話,那麼你不必投票。 – IDontEvenKnow

回答

0

如果對象實現Parcelable您可以將一個對象作爲參數傳遞給另一個活動:

A typical implementation of Parcelable here

然後,送樣的參數,東西像這樣:

Intent intent = new Intent(this, DetailMovieActivity.class); 
intent.putExtra("key", movie);//Your object that implements Parcelable 
startActivity(intent); 

而在其他活動:

Bundle arguments = new Bundle(); 
Movie movie = getIntent().getParcelableExtra("key"));//Receive object 

祝你好運!

+0

Thx,它幫助:) – IDontEvenKnow

0

如果您不喜歡Parcelable方法或不知道如何執行此操作,則可以簡單地將JSONObject作爲字符串傳遞,如here所述。

您唯一需要擔心的是在OnItemClickListener中檢索正確的JSONObject。

相關問題