java手势与WebView
我想做的是: 我希望用户能够自定义手势,并将其命名为“向上”、“向下”。。然后,当用户运行我的应用程序时,它会加载一个带有特定url的WebView,如http://google.com。然后用户可以绘制他之前创建的手势。因此,如果他画出“向上”的手势,那么另一个网络视图就会打开
我的问题是: 当我试图在webview上绘制手势时,它不会绘制。而是滚动网络视图
我试过什么: 已经创建了一个GestureOverlayView,并将WebView放入其中。不幸的是,当Web视图滚动时,GestureOverlayView无法检测到这些手势
我的代码:
public class WebViewCenter extends Activity implements OnGesturePerformedListener {
/** Called when the activity is first created. */
GestureLibrary mLibrary;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//WebView webview = (WebView)findViewById(R.id.WebView01);
//webview.loadUrl("http://www.google.com");
//Button btnStart = (Button)findViewById(R.id.Start);
//btnStart.setOnClickListener(this);
mLibrary = GestureLibraries.fromRawResource(this, R.raw.gestures);
GestureOverlayView gestures = (GestureOverlayView) findViewById(R.id.gestures_overlay);
gestures.addOnGesturePerformedListener(this);
WebView webview = (WebView)findViewById(R.id.WebView);
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("http://live.com");
}
public void onGesturePerformed(GestureOverlayView overlay, Gesture gesture) {
mLibrary.load();
ArrayList<Prediction> predictions = mLibrary.recognize(gesture);
Log.i("Default Marker", predictions.get(0).toString());
if (predictions.size() > 0) {
String action = predictions.get(0).name;
Log.i("Gesture", action);
if ("up".equals(action)) {
Log.i("Up_gesture", "Up gesture detected");
Intent int_up = new Intent(WebViewCenter.this, WebViewUp.class);
WebViewCenter.this.startActivity(int_up);
//return true;
//Toast.makeText(this, "Adding a contact", Toast.LENGTH_SHORT).show();
}
/*else
{
Log.i("Marker 2", "god knows what ur upto");
}*/
}
}
关于如何将网络视图滚动与手势构建分离,有什么建议吗
谢谢, 帕万
共 (0) 个答案