2011-02-04 12 views
0

私はListViewに3つのアイテムとOnItemClickListenerがあります。ListViewの特定のビューを取得する

2番目の項目のViewはどうすれば入手できますか?

最初の項目をクリックすると、2番目の項目のテキストを変更する必要があります。

listView.setOnItemClickListener(new OnItemClickListener() { 

    public void onItemClick(AdapterView<?> arg0, View arg1, 
       int arg2, long arg3) { 
     // TODO Auto-generated method stub 

     switch (arg2) { 
      case 0: 
      ((TextView)/*here i need a view of second item*/).setText(); 
}); 

答えて

0

一つの方法は、あなたがあなたのケースarg1.getParent(で、view.getParent()を使用)、その後、子ビューの配列を返すと、それに応じて使用します。これでGetChildを()を使用することができます 、だろう。

arg0.getChildAt(position)を使用することができます。これは、以前の解決策より優れています。

0

あなたは(問題になることはありません)listViewが最終作ることができる場合は、onItemClickメソッドの内部からそれを参照し、必要なTextViewを取得するためにそのgetChildAtメソッドを使用することができます。

final ListView listView = ... 
listView.setOnItemClickListener(new OnItemClickListener() { 

     public void onItemClick(AdapterView<?> arg0, View arg1, 
       int arg2, long arg3) { 
      // TODO Auto-generated method stub 

      switch (arg2) { 
      case 0: 
      ((TextView) lv.getChildAt(1)).setText(); 
    }); 
関連する問題