Android 創建單選的listview

 listView.setTag(-1);
 listView.setAdapter(new ArrayAdapter<String>(getActivity(), R.layout.common_dialog_single_choice_item, menus));

listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);


<?xml version="1.0" encoding="utf-8"?>
<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"
    android:layout_width="match_parent"
    android:layout_height="?android:attr/listPreferredItemHeightSmall"
    android:checkMark="@drawable/common_dialog_singlechoice_checkbox"
    android:gravity="center_vertical"
    android:paddingLeft="10dp"
    android:paddingRight="10dp" />



獲取選擇結果           listView.getCheckedItemPositions(); 返回的是一個SparseArray 可以從中獲取到每個item的選中狀態



例子:

public class MainActivity extends Activity
{
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final ListView listView = (ListView) findViewById(R.id.lv);
        String[] strs = new String[] { "TCL", "長虹", "長虹", "長虹" };
        listView.setAdapter(new ArrayAdapter<String>(this,
        
        android.R.layout.simple_list_item_single_choice, strs));
        listView.setTag(-1);
        listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
        listView.setOnItemClickListener(new OnItemClickListener()
        {
            
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                listView.setTag(position);
            }
        });
        findViewById(R.id.button1).setOnClickListener(new OnClickListener()
        {
            
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, listView.getTag() + "", 10).show();
            }
        });
        
    }
}




  

發佈了400 篇原創文章 · 獲贊 14 · 訪問量 86萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章