2014-02-25 46 views
-1

我想從列表視圖中檢索數據,其中我的列表有4個項目,如名稱,日期,sem,類別。如何從ListView中獲取數據。 (我的列表視圖有3個項目)

我想讀取列表視圖中的文本並將其傳遞給另一個活動。

+3

你試過了嗎?發貼的問題 –

+0

你的數據在ListView中是JsonData還是靜態數據?顯示你的代碼。 – Piyush

+0

ListView從適配器獲取其數據。要了解數據,有助於瞭解您使用的適配器類型。以及適配器的getView方法的代碼,以瞭解ListView顯示的視圖類型。最後,請澄清是否要將「所有數據」傳遞給新活動,或只是您單擊的數據。 – NameSpace

回答

2

如果您檢索從服務器上的數據,那麼你需要在ListView中的項目單擊獲取項目。像

listview.setOnItemClickListener(new OnItemClickListener() { 
      public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 

       String name =urarraylist.get(position).get("name");// here you have to pas keyname which is put inyour Hashmap arraylist 
       String category =urarraylist.get(position).get("category"); 
       String date=urarraylist.get(position).get("date"); 
       String sem=urarraylist.get(position).get("sem"); 
       Intent i = new Intent(getBaseContext(),anotheractivity.class); 
       i.putExtra("name", name); 
       i.putExtra("category ", category); 
       i.putExtra("date", date); 
       i.putExtra("sem", sem); 
       startActivity(i); 
      } 
     }); 

現在檢索此數據在onCreate()方法的下一個活動。像

 Intent n = getIntent(); 
     String name = n.getStringExtra("name"); 
     String category = n.getStringExtra("category "); 
     String date= n.getStringExtra("date"); 
     String sem= n.getStringExtra("sem"); 
+0

非常感謝。我嘗試了你給的那個。只是我試過了。它正在工作。愛你的支持.. –

+0

謝謝大家嘗試回答這個.. –

+0

很樂意幫助你! – Piyush

1

顧名思義,ListView不包含數據,它只包含Views。這些視圖通常通過Adapter從陣列或List創建。所以你必須要求你的適配器檢索數據。

不幸的是,沒有默認方法,所以你必須創建自己的getter,或者你也可以在getItem()方法循環與getCount()一個你的ListView的適配器上相關聯。

+0

他可以檢索ID並查詢數據庫或更快地迭代適配器。 – Skynet

+1

這正是我所說的...... – Flawyte

1
listview.setOnItemClickListener(new OnItemClickListener() { 
       public void onItemClick(AdapterView<?> parent, View view, 
        int position, long id) { 

       String name=(String)parent.getItemAtPosition(position); 
        Intent i = new Intent(getBaseContext(),anotheractivity.class); 
        i.putExtra("USERNAME", name); 
        startActivity(i); 
       } 
      }); 

如果單擊列表視圖排從相應位置將獲取並傳遞給意圖,並進一步下一個活動的價值。

的奇妙之處在於這裏:

String name=(String)parent.getItemAtPosition(position); 
+0

請解釋一下你的代碼的作用? – Skynet

+0

如果你點擊列表視圖從相應的位置獲取值並將該值轉換爲nextactivity – Boopathi

+0

向下選民請留下評論,我在這裏做了什麼錯誤? – Boopathi

相關問題