我正在尝试为自定义按钮和位图字段设置一个公共监听器。我能够在监听器中访问但无法区分两个字段。
private class MeaningsDetailsPageListner implements FieldChangeListener{
public void fieldChanged(Field field, int arg1) {
Dialog.alert("Hi");
if(field == bField){
Dialog.alert("Image Clicked");
}else if(field == wordBtn){
Dialog.alert("Button Clicked!!");
}
}
}
在下面的代码中,wordBtn是我的自定义按钮,另一个是BitmapField。我正在收到Hi警报,但无法进一步区分。
任何帮助都将不胜感激。
答案 0 :(得分:0)
虽然我看到了您要做的事情,但最好还是将FieldChangeListener
作为匿名类单独添加到每个字段中。这样,在fieldChanged
内测试相等性时,您不必担心将Field强制转换为正确的类型。
ButtonField b = new ButtonField("Hello!");
b.setChangeListener(new FieldChangeListener() {
public void fieldChanged(Field field, int context) {
Dialog.alert("Button clicked");
}
});