Java 在Android中添加N个单选按钮
我想根据一些值添加单选按钮。值定义我必须显示的单选按钮总数。目前我正在动态添加两个单选按钮,但这不是添加单选按钮的正确解决方案。如果我必须为这段代码显示10个单选按钮,我必须创建10个单选按钮实例。谁能告诉我如何才能做到这一点 代码:-Java 在Android中添加N个单选按钮,java,android,kotlin,radio-button,radio-group,Java,Android,Kotlin,Radio Button,Radio Group,我想根据一些值添加单选按钮。值定义我必须显示的单选按钮总数。目前我正在动态添加两个单选按钮,但这不是添加单选按钮的正确解决方案。如果我必须为这段代码显示10个单选按钮,我必须创建10个单选按钮实例。谁能告诉我如何才能做到这一点 代码:- class FragmentQues : Fragment() { override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
class FragmentQues : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.fragmentques_layout, container, false)
}
@SuppressLint("ResourceType")
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
// Create RadioButton programmatically
val radioButton1 = RadioButton(activity)
radioButton1.layoutParams= LinearLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT)
radioButton1.setText("No")
radioButton1.id = 1
val radioButton2 = RadioButton(activity)
radioButton2.layoutParams = LinearLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT)
radioButton2.setText("Yes")
radioButton2.id = 2
profile_radio_group.addView(radioButton1)
profile_radio_group.addView(radioButton2)
profile_radio_group.setOnCheckedChangeListener { group, checkedId ->
if (checkedId ==1){
// Some code
}else{
// Some code
}
}
}
}好的,这可以通过一个简单的for循环来完成
class FragmentQues:Fragment(){
覆盖创建视图(充气机:布局充气机,容器:视图组?,
savedInstanceState:捆绑?:查看{
返回充气机。充气(右布局。碎片布局,容器,假)
}
@SuppressLint(“资源类型”)
覆盖已创建的视图(视图:视图,保存状态:捆绑?){
super.onViewCreated(视图,savedInstanceState)
val值=2;
//如果每个按钮都有自定义文本,则必须在列表中定义它们
val textList=listOf(“否”、“是”)
for(i在0中直到值){
//以编程方式创建RadioButton
val radioButton=radioButton(活动)
radioButton.layoutParams=LinearLayout.layoutParams(
ViewGroup.LayoutParams.WRAP_内容,
ViewGroup.LayoutParams.WRAP_内容)
radioButton.setText(文本列表[i])
radioButton.id=i
配置文件\u单选\u组。添加视图(单选按钮)
}
profile_radio_group.setOnCheckedChangeListener{group,checkedId->
如果(检查EDID==1){
//一些代码
}否则{
//一些代码
}
}
}
- 请注意,如代码中所述,文本必须作为数组传递,以满足您的需要