项目要用到多行多列单选框,先上最终结果图;
主要思路:
1.此种布局类似gridview,所以采用gridview来写;
2.每个行布局为textview带图片;
3.设置单个textview的点击事件监听;
4.若是有光标选择的,多设置gridview的onItem监听;
5.用sparseArray记录每个选项选中状态,有且只有一个被选中;
6.经过进一步封装,形成自定义多行多列单选框;
下面贴出封装后,仅需要写的几行代码:
singleChoiceView = (SingleChoiceGridView)findViewById(R.id.single_choice_view); singleChoiceView.setNumColumns(4);//设置4列 singleChoiceView.setData(type);//设置单选内容 //以下监听作用于如simphone工业手持抢,光标选择;(如若只是普通触屏手机可不写) singleChoiceView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView> parent, View view, int position, long id) { ((SingleChoiceGridView.AdapterSingleChoice) singleChoiceView.getAdapter()).notifyPos(position); } }); //获取所选item int payType = singleChoiceView.getPayTypeInt();
下面附上源码地址:http://download.csdn.net/detail/qq_25188705/9505669