【问题标题】:Child field event handling issue in custom HorizontalFieldManager自定义 Horizo​​ntalFieldManager 中的子字段事件处理问题
【发布时间】:2012-05-11 14:37:40
【问题描述】:

我正在尝试创建一个自定义列表字段,其中每行有 2 个以上的可点击按钮。为此,我自定义了 Horizo​​ntalFieldManager 并创建了自己的管理器来对齐字段元素。现在用户界面非常好。

但是,我正在努力处理对双方都有效的事件。

第 1 步 我已将 fieldChangedListener 用于在行中添加的按钮。它工作正常

public void fieldChanged(Field field, int context) {} 

step-2 已使用导航点击来处理父管理器上的事件。

  protected boolean navigationClick(int status, int time) {
            Field field = getFieldWithFocus();
            Dialog.alert("shops field clicked");        
                return super.navigationClick(status, time);
        }

现在,即使是 navigationClick 事件也能正常工作。但作为按钮是添加到 VFM 的子字段。当我单击按钮时,VFM 和按钮事件都在一起。

当在 ButtonField 上单击按钮时,我怎么能只限制按钮。

【问题讨论】:

  • 尝试在按钮上应用ButtonField.CONSUME_CLICK 样式。
  • 我的回答是否回答了您的问题?

标签: blackberry event-handling


【解决方案1】:

如果我正确理解了您的问题,您希望只为子字段(可点击按钮)调用 navigationClick(),而不为经理调用。很抱歉让您失望,但您不能。导航单击事件将始终首先为经理调用,然后经理才会将该事件传播到子字段。按键事件、触摸事件、焦点事件等也是如此……

描述你想要实现的目标,添加代码 sn-p,我相信我们会找到解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-06
    • 2012-10-29
    • 2011-09-10
    • 2020-02-22
    • 1970-01-01
    • 1970-01-01
    • 2018-05-28
    相关资源
    最近更新 更多