我正在尝试创建一个自定义列表字段,其中每行有两个以上的可点击按钮。为此我已经自定义了HorizontalFieldManager并创建了自己的管理器来对齐字段元素。现在用户界面非常好。
但是,我正在努力处理这两个事件的工作。
Step-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上单击按钮时仅限制按钮。
答案 0 :(得分:2)
如果我正确理解了您的问题,您希望仅为子字段(可单击按钮)调用navigationClick()
,而无需为管理员调用。很抱歉让您失望,但您不能。导航点击事件将始终首先为经理调用,而且只有经理将事件传播到子字段。关键事件,触摸事件,焦点事件等同样适用......
描述您要实现的目标,添加代码段,我相信我们会找到解决方案。