有没有一种简单的方法可以防止DelayedConfirmationView在滑动时作出反应?

时间:2014-09-23 08:44:02

标签: android wear-os

基本上当我在GridViewPager中移动片段时,如果我轻触触摸DelayedConfirmationView,它就会被触发。 我认为一个解决方案可能是拦截GridViewPager中的所有触摸并尝试确定它是否是滑动,但听起来非常像重新发明轮子。 我想相信已经有一个轮子照顾这个......:)

顺便说一句:我认为DelayedConfirmationView(和许多其他东西一样)还没有在Wear API中完成。

1 个答案:

答案 0 :(得分:1)

我也找不到这个问题的好解决方案,这就是我实施简单解决方法的原因。我添加了可点击的布局包装。

<FrameLayout
android:id="@+id/clickable_hack_lt"
android:layout_width="110dp"
android:layout_height="110dp"
android:clickable="true"
android:onClick="startTimerClick"
android:layout_gravity="center"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginTop="24dp">

<android.support.wearable.view.DelayedConfirmationView
    android:id="@+id/delayed_confirm"
    android:layout_width="110dp"
    android:layout_height="110dp"
    app:circle_border_color="#992878ff"
    app:circle_border_width="10dp"
    app:circle_radius="60dp"
    app:circle_color="@color/action_button"/>

在你的java代码中你可以像这样做

public void startTimerClick(View v) {
  if (!isRunning) {
      mDelayedView.setListener(listener);
      listener.onTimerSelected(v);
  }
}