我想简化androidstudio中的代码。我用的纽扣
button.setOnClickListener(this);
后来呢
public void onClick(View v){ switch (v.getId()){ case R.id.button_1: ..; break;
等等有没有类似的复选框方法?我什么也找不到。
14ifxucb1#
是的,你可以用这个方法 setOnCheckedChangeListener ,它将为您提供两个属性,按钮和ischecked boolean,您应该为boolean使用switch语句,并为每个状态定义您自己的代码逻辑。
setOnCheckedChangeListener
ifmq2ha22#
一是落实 CompoundButton.OnCheckedChangeListener 在活动或片段中,然后在 onCreate() 找到你的 CheckBox 为他们设置一个活动,如下所示。
CompoundButton.OnCheckedChangeListener
onCreate()
CheckBox
cb1.setOnCheckedChangeListener(this) cb2.setOnCheckedChangeListener(this)
最后,重写如下所需的方法
override fun onCheckedChanged(buttonView: CompoundButton?, isChecked: Boolean) { if (buttonView?.id == R.id.cb1) { Log.e("CB1","CB1") } else if(buttonView?.id==R.id.cb2) { Log.e("CB2","CB2") } }
eqfvzcg83#
为了 CheckBox 你也可以用 setOnClickListener() 方法。
setOnClickListener()
checkBox.setOnClickListener(this); public void onClick(View v) { switch (v.getId()) { case R.id.checkBox: if (checkBox.isChecked) { // code } else { // code } break; } }
3条答案
按热度按时间14ifxucb1#
是的,你可以用这个方法
setOnCheckedChangeListener
,它将为您提供两个属性,按钮和ischecked boolean,您应该为boolean使用switch语句,并为每个状态定义您自己的代码逻辑。ifmq2ha22#
一是落实
CompoundButton.OnCheckedChangeListener
在活动或片段中,然后在onCreate()
找到你的CheckBox
为他们设置一个活动,如下所示。最后,重写如下所需的方法
eqfvzcg83#
为了
CheckBox
你也可以用setOnClickListener()
方法。