我需要扩展 Button View 类,这样我就可以添加一些属性来存储数据(我不能使用 setTag() 因为我需要存储多个变量)。我正在这样做:
public class ButtonExtended extends Button{
private String thumb;
private String desc;
private String key;
public void setDesc(String desc) {
this.desc = desc;
}
public void setKey(String key) {
this.key = key;
}
public void setThumb(String thumb) {
this.thumb = thumb;
}
public String getDesc() {
return desc;
}
public String getKey() {
return key;
}
public String getThumb() {
return thumb;
}
public ButtonExtended(Context context) {
super(context);
}
}
问题是,在扩展按钮类的 OnClick Listener 中,我不允许使用新创建的方法:
private View.OnClickListener ButtonClicked = new View.OnClickListener() {
@Override
public void onClick(View v) {
v.getThumb(); //This is not allowed
}
};
有人可以帮忙吗?
最佳答案
将其转换为您创建的自定义类。
private View.OnClickListener ButtonClicked = new View.OnClickListener() {
@Override
public void onClick(View v) {
ButtonExtended buttonView = (ButtonExtended) v;
buttonView.getThumb(); //This is not allowed
}
};
关于java - 扩展 View 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32524744/