我越來越喜歡它,它不應該只顯示在特定項目上 如何使自定義列表視圖中的單選按鈕爲單一模式。如果我點擊特定的單選按鈕,那麼它必須出現,另一個未選中。如果點擊第一行,然後選中第一行的單選按鈕。點擊第二行選擇的第二行放射按鈕,並取消選擇第一行。點擊第三行選中的第三行單選按鈕,未選中第一行和第二行。自定義列表視圖上的複選框
customlist.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <RadioButton android:id="@+id/radioButton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_alignParentLeft="true" android:text="" /> <TextView android:id="@+id/card" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingLeft="10dip" android:layout_centerVertical="true" android:layout_toRightOf="@+id/radioButton1" android:text="" android:textColor="#000000" android:textSize="15dip" android:textStyle="bold" /> </RelativeLayout> listView = (ListView) findViewById(R.id.cardlist); adapter =new MyAdapter(this, app.arryList,app.arryList1); listView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub Toast.makeText(getApplicationContext(), "am thelist",Toast.LENGTH_LONG).show(); } }); listView.setAdapter(adapter); listView.setChoiceMode(listView.CHOICE_MODE_SINGLE); } public class MyAdapter extends BaseAdapter { Context context = null; ArrayList<String> items= null; ArrayList<String> items1= null; public MyAdapter(Newcard newcard, ArrayList<String> items, ArrayList<String> items1) { // TODO Auto-generated constructor stub this.items = items; this.items1 = items1; } @Override public int getCount() { // TODO Auto-generated method stub return items.size(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return items; //return items.get(position); } @Override public long getItemId(int position) { // TODO Auto-generated method stub return position; } @Override public View getView(final int position, View convertView, ViewGroup parent) { // TODO Auto-generated method stub View layout = null; TextView produ = null; TextView desc = null; Button edit = null; RadioButton radio =null; if (convertView == null) { lay = LayoutInflater.from(getApplicationContext()); layout = lay.inflate(R.layout.customlist, null); } else { layout = convertView; } produ = (TextView) layout.findViewById(R.id.card); produ.setText("" +app.arryList.get(position)); radio = (RadioButton) layout.findViewById(R.id.radioButton1); radio.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub //check.setVisibility(View.GONE); System.out.println("data "+app.arryList.get(position)); } }); } }); return layout;
我們如何才能使默認情況下最初選中的單選按鈕? – AndroidGeek 2014-08-07 13:05:30