BlackBerry中的CustomButtonField

时间:2011-06-24 06:55:12

标签: blackberry

Plz明确地解释了......的意思。

首先我创建一个CustomButtonField类,然后我发现如果我不写

public boolean isFocusable() 
{
  return true;
}

功能,它不响应鼠标点击等用户事件....

并且还简要解释了以下函数的含义

protected boolean navigationClick(int status, int time)
{  
    fieldChangeNotify(0);
    return true;
}


protected boolean keyChar(char character, int status, int time) 
{
    if (character == Keypad.KEY_ENTER) 
    {
      fieldChangeNotify(0);
      return true;
    }
    return super.keyChar(character, status, time);
}

1 个答案:

答案 0 :(得分:2)

如果您希望字段的行为类似于按钮

  • 您必须设置Field.FOCUSABLE样式位。
  • setChangeListener到CustomButtonField。

    protected boolean navigationClick(int status, int time) {
        fieldChangeNotify(0);
        return true;
    }
    


    如果用户点击此按钮,我们可以看到该按钮已更改(fieldChangeNotify(0);) 和按钮的监听器工作。

    protected boolean keyChar(char character, int status, int time) 
    {
        if (character == Keypad.KEY_ENTER) 
        {
          fieldChangeNotify(0);
          return true;
        }
        return super.keyChar(character, status, time);
    }
    

通过此方法,如果按下“Enter键”,按钮表示我已更改。(fieldChangeNotify(0);