Android 索尼智能手表2:如何防止长时间点击按钮后调用CLICK_TYPE_SHORT?

Android 索尼智能手表2:如何防止长时间点击按钮后调用CLICK_TYPE_SHORT?,android,sony,sony-smartwatch,Android,Sony,Sony Smartwatch,我为Sony SmartWatch 2使用了一个ControlExtension,我有一个点击处理程序: @Override public void onObjectClick(final ControlObjectClickEvent event) { switch (event.getClickType()) { case Control.Intents.CLICK_TYPE_LONG: Log.i("onObjectClick", "long

我为Sony SmartWatch 2使用了一个ControlExtension,我有一个点击处理程序:

@Override
public void onObjectClick(final ControlObjectClickEvent event) {
    switch (event.getClickType())
    {
        case Control.Intents.CLICK_TYPE_LONG:
        Log.i("onObjectClick", "long press");
        break;

        case Control.Intents.CLICK_TYPE_SHORT:
        Log.i("onObjectClick", "press");
        break;
    }
}
当我点击按钮时,我得到了预期的日志。 当我按住按钮时,我会长按我想要的按钮。
但当我长时间按下按钮后松开时,我又被按下了。如何更改此行为?

您是否尝试过像这样处理长时间单击

ControlView upperLeft = mLayout.findViewById(R.id.sample_control_object_1);
upperLeft.setOnLongClickListener(new OnLongClickListener() {
            @Override
            public void onLongClick() {
                // handle click action here
            }
        });

我试过了,但函数似乎从未被调用过。setOnClickListener也是如此。在mLayout=parseLayoutlayout之后,我在ControlExtension的构造函数中注册了处理程序;并添加了一个日志项以确保调用它。您是否确保在布局中为正在单击的视图设置了android:clickable=true?是的,但我认为没有必要设置按钮。我现在通过在长按上设置一个标志来忽略下一个按事件来管理它。不管怎么说,真正的设备似乎与那里的附件模拟器完全不同,长按根本不起作用,我无法设置按钮的文本,并且文本看起来比模拟器中的文本大得多。对于文本大小,请确保您没有使用缩放使用px而不是sp,否则字体大小将根据您与SW2配对的设备而有所不同。不确定为什么长按按钮文本对您不起作用,这些应该可以正常工作。如果你不明白,请发一段代码片段,我可以帮你。使用px解决了大小问题,谢谢。对于另一个问题,如果明天之前我无法解决,我将发布一个新问题。