2016-11-26 33 views
1

如何到gettextlistviewOnItemClickListener ??如何在列表視圖中獲取文字

我不能在列表視圖敬酒文本work.but gettext();不行

這是我的代碼。提前致謝。

 listView.setOnItemClickListener(new OnItemClickListener() { 
     @SuppressWarnings("unused") 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, 
      int position, long id) { 
      // ListView Clicked item index 
      int itemPosition = position; 

      //parent.getChildAt(position - listView.getLastVisiblePosition()).findViewById(R.id.listView1); 
      String itemValue = (String) listView.getItemAtPosition(position); 

      //???????????????????????????.getText().toString(); 

      // Show Alert 
      Toast.makeText(
      getApplicationContext(), 
      "Position :" + itemPosition + " ListItem: " + itemValue, 
      Toast.LENGTH_LONG 
     ).show(); 
     } 
     }); 
+0

你可以發表你的模型類,或者你可以說,你正在發送數據的ListView適配器? –

+0

BTW你爲什麼寫'SuppressWarnings(未使用「)'? –

+0

請解釋quetion正確 –

回答

1

只需輸入該代碼和進口的TextView在您的項目

String itemValue = (String) listView.getItemAtPosition(position); 
String values=((TextView)view).getText().toString(); 
0
You have to get the id of the textView from the view parameter like this 

public void onItemClick(AdapterView<?> parent, View view, 
      int position, long id) { 

TextView textView =(TextView) view.findViewById(R.Id.YourTextViewId); 
String str=textView.getText(); 

} 
+0

採取的TextView用於設置文本 –

0

我想你可以試試這個:

@Override 
public void onItemClick(AdapterView<?> view, View v, int position, long arg3) { 
ListView l = (ListView) view; 
String s = (String) l.getItemAtPosition(position); 
} 
0

得到視圖中的文字代替。從您用來將數據綁定到ArrayAdapter的數據集values中獲取。

String itemValue = values[position]; 
Toast.makeText(YourActivty.this, "Clicked " + itemValue + " at " + position, Toast.LENGTH_LONG).show(); 
1

試試這個:

lista.setOnItemClickListener(new AdapterView.OnItemClickListener() { 

    @Override 

    public void onItemClick(AdapterView<?> parent, View view, int position, long  id){ 

      TextView txt = (TextView) view.findViewById(R.id.lblId); 
      String s = textView.getText().toString(); 
      Toast.makeText(getActivity(), "Your id "+s, Toast.LENGTH_SHORT).show(); 
    } 
}); 
+0

歡迎SO並感謝您抽出時間來寫這個問題的答案我已經。可以自由地改進你的帖子的代碼格式,但是你可以進一步改進它:除了你在答案中加入的任何代碼之外,還要寫一些解釋性的單詞,這很好。 l解釋你的代碼爲什麼以及如何解決最初的問題。您可以輕鬆地[編輯]您的答案以添加此解釋,我建議您這樣做。這將幫助OP和其他有相同問題的人理解你的答案。 – mmgross

相關問題