listview绑定radiobutton控件,需要用自定义的Adapter
控制RadminButton只能选一个的方法:
使用自定义Adapter
在adapter.getView方法中给RadminButton注册点击事件
在onClick事件中用个集合记录当前RadminButton的checked状态
调用adapter.notifyDataSetChanged(); 刷新列表即可
因为刷新列表的时候,会重新调用getView方法
radiobutton控件外层布局加上android:descendantFocusability= "blocksDescendants"
radiobutton控件加上android:focusable = "false" 再重新设置监听事件就行了
你说的"如何实现listview列表中只有一个radiobutton被选中" 是什么意思 ?
有几个radiobutton? 只有一个就设置选中一个就完了 还想怎样?
1.setOnItemClickListenerlistview无法响应:
radiobutton的父控件加上android:descendantFocusability= "blocksDescendants"
radiobutton控件加上android:focusable = "false"
2.只有一个radiobutton被选中:
首先:设置一个int变量,记录上次选中的条目,例如,int lastSelectedIndex;初始为-1,表示无选中项。
然后:在setOnItemClickListenerlistview中,当被选中时,设置lastSelectedIndex为当前的index,并且调用adapter.notifyDataSetChanged()来刷新。
最后:在adapter中的getView()中,判断如果当前的index == lastSelectedIndex,则将radiobutton设置为选中状态,否则是未选中状态。