1

我想在每一行中获取按钮单击事件。如何得到它?如果每行只有一个按钮,我尝试了此链接及其工作。但就我而言,每一行都有多个按钮。10,20 和 11,21 是我的按钮。

在此处输入图像描述

在上面链接的 RowManager 类中,我添加了以下代码 -

button = new ButtonField("1" + index, ButtonField.CONSUME_CLICK);
button.setCookie(new Integer(index));
button.setFont(textFont);
add(button);


button1 = new ButtonField("2" + index, ButtonField.CONSUME_CLICK);
button1.setCookie(new Integer(index));
button1.setFont(textFont);
add(button1);

现在在 StackScreen 类上,public void fieldChanged(Field field, int context),我如何获得点击按钮的名称?

4

1 回答 1

2

由我自己解决 -

public static int v=0;
button = new ButtonField("1" + index, ButtonField.CONSUME_CLICK);
button.setCookie(new Integer(v+1));  //set cookie
button.setFont(textFont);
add(button);
v=v+1; //increment the value of v

button1 = new ButtonField("2" + index, ButtonField.CONSUME_CLICK);
button1.setCookie(new Integer(v+1));
button1.setFont(textFont);
add(button1);
v=v+1;

和 -

 public void setChangeListener(FieldChangeListener listener) {
     // only the button field supports change listeners
     button.setChangeListener(listener);
     button1.setChangeListener(listener);
  }

然后在 StackScreen 类 -

public void fieldChanged(Field field, int context) {
       Object f=field.getCookie();
       Dialog.alert("Button " +f);
 }
于 2013-03-22T09:55:01.030 回答