作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我想在我的应用程序中使用Gesture
。所以我检查了这个 documentation并且已经创建了一个手势。然后将该手势复制到我的 raw
文件夹,该文件夹位于 res/
。
从这里开始一切正常,然后我实现 OnGesturePerformedListener
,如下所示:
if(!mLibrary.load()) {
Log.d("Tag", "Couldn't load");
} else {
Log.d("Tag", "Loaded");
GestureOverlayView gesture = (GestureOverlayView) findViewById(R.id.gestures);
gesture.addOnGesturePerformedListener(this);
}
最后是我的听众:
public void onGesturePerformed(GestureOverlayView overlay, Gesture gesture) {
ArrayList<Prediction> predictions = mLibrary.recognize(gesture);
Log.d("Tag", "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) {
// Show the spell
Toast.makeText(this, prediction.name, Toast.LENGTH_SHORT).show();
}
}
}
问题是当我尝试绘制手势时没有任何变化。甚至 onGesturePerformed
也不起作用。有什么问题吗?
我不确定,但布局可能会导致,这里是:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/splash_bg"
android:screenOrientation="portrait" >
<android.gesture.GestureOverlayView
android:id="@+id/gestures"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:layout_weight="1.0" />
</RelativeLayout>
任何帮助都会很棒。
最佳答案
您应该使用 GestureOverlayView 填充整个手势区域。改变
android:layout_height="0dip"
到
android:layout_height="fill_parent"
应该可以解决问题。
关于Android:手势表现不佳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12070001/
我是一名优秀的程序员,十分优秀!