2011-08-05 46 views
0

我有一個自定義listadapter與每個級別的圖像和文本。我想獲取選定級別的文本。從自定義listadapter中的子視圖中獲取文本

public View updateView(View view, TreeNodeInfo<Long> treeNodeInfo) { 
      final LinearLayout viewLayout = (LinearLayout) view; 
      final TextView descriptionView = (TextView) viewLayout.findViewById(R.id.item); 
      final ImageView img = (ImageView)viewLayout.findViewById(R.id.image); 




return viewLayout; } 

在我的活動類中,我在列表中有一個clicklistener。

customlist.setOnItemClickListener(new OnItemClickListener(){ 
         @Override 
         public void onItemClick(final AdapterView<?> parent, final View view, final int position, final long id){ 
          //dostuff 
         } 
        }); 

(TextView的)view.findViewById(R.id.item);

僅返回第一個項目的文本,而不是列表中的任何其他選定項目。

如何獲取所選項目的文字?

回答

1

使用用於將文本綁定到文本視圖的基礎數據,更新該數據並通知ListView數據已更改。

For example 
List<Map<String,String> data = new List<Map<String,String>>(); 
// a bunch of add's 

adapter = new SimpleAdapter(Activity.this, data, R.layout.list_item, 
     new String{TEXT1, TEXT2, TEXT3, IMG1}, 
     new int[] {R.id.text1, R.id.text2, R.id.text3, R.id.IMG1}); 
// set adapter 

// ... 

onListItemClick(..., int position, long id){ 
Map<String,String> item = data.get(position); 
    item.put(TEXT1, updatedText1String); 
    item.put(TEXT2, updatedText2String); 
    item.put(TEXT3, updatedText3String); 
    listView.notifyDataSetChanged(); 
} 
+0

可以請你提供一個exmaple爲...不知道你說什麼 – jsp

相關問題