webView onTouchEvent - PullRequest
       6

webView onTouchEvent

1 голос
/ 16 января 2010

Я пытаюсь поймать onTouchEvent WebView, чтобы обрабатывать такие действия, как MotionEvent.ACTION_UP, MOVE и CANCEL. Я сделал простой пример, но не увенчался успехом, однако я преуспел только с помощью View. Я что-то упустил?

Спасибо

public class HelloWebView extends Activity {

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(new MyWebView(this));
 }

 private static class MyWebView extends WebView {

  @Override
  public boolean onTouchEvent(MotionEvent event) {
   int action = event.getAction();
   Log.w("TouchEvent","Touch" + action);
   Log.w("HitResult",this.getHitTestResult().toString());
   switch (action) {
   case (MotionEvent.ACTION_DOWN): // Touch screen pressed
    break;
   case (MotionEvent.ACTION_UP): // Touch screen touch ended
    break;
   case (MotionEvent.ACTION_MOVE): // Contact has moved across screen
    break;
   case (MotionEvent.ACTION_CANCEL): // Touch event cancelled
    break;
   }
   return super.onTouchEvent(event);
  }

  public MyWebView(Context context) {
   super(context);
   this.getSettings().setJavaScriptEnabled(true);
   this.loadUrl("http://www.google.com");
  }
 }

}

1 Ответ

0 голосов
/ 03 ноября 2010

это потому, что вы используете WebView, он уже обработал большую часть перемещений onTouchEvent. У меня сейчас нет ответа, но, по крайней мере, я могу сказать вам, в чем проблема!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...