【发布时间】:2014-05-10 00:42:59
【问题描述】:
我想要做的是,你有 2 个 RadioButton,当你点击其中的 1 个时,它会显示一个 ListView1,例如,当你点击另一个 RadioButton 时,它会显示一个 ListView2
这是我在我的 xml 文件中得到的:
<RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:orientation="horizontal" >
<RadioButton
android:id="@+id/radio0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:paddingRight="5dp"
android:text="Free Apps" />
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Paid Apps" />
</RadioGroup>
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/radioGroup1" >
</ListView>
这就是我在 .java 中的内容:
private void populateListView() {
// Create list of items
String[] items = {"Test", "Test 2", "Test 3"};
String[] items2 = {"Bla", "Bla bla", "Bla bla bla"};
// Build Adapter
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.mainitem, items);
ArrayAdapter<String> adapter2 = new ArrayAdapter<String>(this, R.layout.mainitem, items2);
// Configure the list view
ListView list = (ListView) findViewById(R.id.listView1);
list.setAdapter(adapter);
}
public void onCheckedChanged(RadioGroup group, int checkedId) {
if(checkedId == R.id.radio0){
// Show items
}
if(checkedId == R.id.radio1){
// Show items2
}
}
public void onClick(View v) {
RadioGroup.clearCheck();
}
如果您需要其他内容,请告诉我。谢谢!
【问题讨论】:
标签: android eclipse listview radio-button radio-group