我正在尝试ToggleButton
在一个名为 的新类中扩展该类TagToggleButton
,其唯一区别在于它有一个我可以设置与之关联的 ID。该类TagToggleButton
如下所示:
public class TagToggleButton extends ToggleButton {
private long tagId;
public TagToggleButton(Context context) {
super(context);
}
public TagToggleButton(Context context, long id) {
super(context);
this.setTagId(id);
}
public void setTagId(long id) {
this.tagId = id;
}
public long getTagId() {
return this.tagId;
}
}
然后我想调用一个 OnClickListener 来获取按钮的 ID 属性。例如:
tag.setOnCheckedChangeListener(new TagToggleButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if (isChecked) {
long id = buttonView.getTagId();
// will do something with id afterwards
} else {
//Will do something else if the button isn't checked
}
}
但是,我不能调用getTagId
,buttonView
因为它被定义为CompoundButton
. 如何更改buttonView
为TagToggleButton
(即如何OnCheckedChangeListener
在我的方法中覆盖类TagToggleButton
?
非常感谢!