【问题标题】:Using a gesture overlay view in android在android中使用手势覆盖视图
【发布时间】:2011-03-25 15:02:03
【问题描述】:

所以我尝试在 android 中使用手势叠加视图来进行“滑动”操作。因此,当用户向左“滑动”时,它会执行某些代码,而当他们向右滑动时,它会执行其他代码。我尝试像这样声明手势覆盖:

GestureOverlayView gest = (GestureOverlayView) findViewById(R.id.hatgest);

但是我不知道从那里去哪里,我在开发指南或在线上找不到任何有用的东西。对于一个按钮,我通常会使用“onclicklistener”我将如何使用手势覆盖来做到这一点?有没有人有任何我可以参考的代码示例?谢谢

【问题讨论】:

    标签: android


    【解决方案1】:

    首先让您从手势生成器中自定义手势。手势生成器应用程序包含在 sdk 中。将从手势生成器应用程序创建的文件放入您将要使用这些手势的应用程序的原始文件夹中。您也可以通过documentation获得帮助

      public class YourClass extends Activity implements OnGesturePerformedListener {
    
        private GestureLibrary mLibrary;
        mLibrary = GestureLibraries.fromRawResource(this, R.raw.gestures);
        if (!mLibrary.load()) {
          finish();
        }
    
        GestureOverlayView gestures = (GestureOverlayView) findViewById(R.id.gestures);
        gestures.addOnGesturePerformedListener(this);
    
        public void onGesturePerformed(GestureOverlayView overlay, Gesture gesture) {
          ArrayList < Prediction > predictions = mLibrary.recognize(gesture);
          Log.v("performed", "performed");
    
          // We want at least one prediction
          if (predictions.size() > 0) {
            Prediction prediction = predictions.get(0);
    
            // We want at least some confidence in the result
            if (prediction.score > 1.0) {
              if (prediction.name.equalsIgnorecase("right")) {
                //do you thing here//
              }
            }
          }
        }
      }
    

    【讨论】:

    • 我现在正在尝试实现这一点,但我收到R.raw.gesturesraw cannot be resolved or is not a field. 的错误,有人有什么想法吗?我正在使用 SDK 10 版
    • @JuiCe 你应该先创建一个手势(通常在模拟器中使用手势生成器),然后将创建的手势(在模拟器的 sdcard 中找到)移动到项目的原始文件夹
    【解决方案2】:

    显然 GestureOverlayViews 可以有多个 onGestureListeners。

    查看方法 addOnGestureListener() 和 addOnGesturePerformedListener()。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-21
      相关资源
      最近更新 更多