2014-09-21 59 views
1

我已經創建了列表視圖,我想要做的是當用戶在第一個列表中查看時,選定的記錄應顯示在第二個列表中,在我的代碼中它顯示在文本上的觀點,但我要顯示第二列表視圖該記錄,所以請給我的代碼/想法如何做到這一點,因爲我在Android的新..如何將列表視圖記錄顯示在setOnItemClickListener上的第二個listview中

public class MainActivity extends Activity { 
String item[]=new String[]{"rk","kk","kk","ll","mm","uu"}; 
TextView tv,tv2,tv3,tv4,tv5; 
List<TextView> arrayTV = new ArrayList<TextView>(); 
ListView li,li2; 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 

li=(ListView)findViewById(R.id.listView1); 
li2=(ListView)findViewById(R.id.listView2); 

tv=(TextView)findViewById(R.id.textView1); 
tv2=(TextView)findViewById(R.id.textView2); 
tv3=(TextView)findViewById(R.id.textView3); 
tv4=(TextView)findViewById(R.id.textView4); 
tv5=(TextView)findViewById(R.id.textView5); 

arrayTV.add(tv); 
arrayTV.add(tv2); 
arrayTV.add(tv3); 
arrayTV.add(tv4); 
arrayTV.add(tv5); 

ArrayAdapter<String> adapter=new ArrayAdapter<String> (this,android.R.layout.simple_list_item_1,android.R.id.text1, item); 
li.setAdapter(adapter); 
li.setOnItemClickListener(new OnItemClickListener() { 
@Override 
public void onItemClick(AdapterView<?> arg0, View arg1, int position,long arg3) { 
    // TODO Auto-generated method stub 

    int itm=position;  
Toast.makeText(getApplicationContext(),""+itm+""+li.getItemAtPosition(position),40).show(); 
    arrayTV.get(position).setText(""+li.getItemAtPosition(position)); 
} 
    }); 
} 

這裏是我的XML:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/rt" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    android:weightSum="1" 
    tools:context=".MainActivity" > 

<ListView 
    android:id="@+id/listView1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" android:layout_weight=".5" > 

</ListView> 

回答

1

設置第二列表視圖的適配器在第一列表視圖的onitemclick

List<String> a = new ArrayList<String>(); 

    li.setOnItemClickListener(new OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> arg0, View arg1, int position,long arg3) { 

     String clickedItem =item[postion]; 
if(!a.contains(clickedItem)) 
     a.add(clickedItem); 
     String[] newitem = new String[a.size()]; 
     a.toArray(newitem); 
      ArrayAdapter<String> adapter=new ArrayAdapter<String> (MainActivity.this,android.R.layout.simple_list_item_1,android.R.id.text1, newitem); 
       li2.setAdapter(adapter); 
      } 
       }); 
相關問題