2013-05-22 96 views
1

我有一個應用程序,在myActivity我使用webView之一。對於某些類型的平板電腦,我有雙重觸摸的問題。 My JS和Android中的其他觸摸事件。我無法刪除JS中的觸摸事件,因爲有些平板電腦。我應該實施它。所以我想停止這個活動的Android觸摸事件,它是孩子,而不是所有的應用程序。我試圖如何禁用觸摸事件?

public static void enableDisableViewGroup(ViewGroup viewGroup, boolean enabled) { 
    int childCount = viewGroup.getChildCount(); 
    for (int i = 0; i < childCount; i++) { 
     View view = viewGroup.getChildAt(i); 
     view.setEnabled(enabled); 
     if (view instanceof ViewGroup) { 
      enableDisableViewGroup((ViewGroup) view, enabled); 
     } 
    } 
} 
+0

你可以嘗試覆蓋每個視圖的onTouchEvent並忽略用戶輸入嗎? – Anukool

+0

你能舉個例子嗎? – Zizou

+0

這是用於onTouchListener - http://developer.android.com/reference/android/view/View.OnTouchListener.html,這是一篇關於處理Android中的觸摸事件的文章 - http://www.vogella.com/articles /AndroidTouch/article.html – Anukool

回答

1

忽略在網頁視圖觸摸事件的方法是相當簡單,只是做:

mWebView.setOnTouchListener(new View.OnTouchListener() { 
    @Override 
    public boolean onTouch(View v, MotionEvent event) { 
     return false; //returns true if you wan't also ignore the js touch events 
    } 
}); 

的事情是,我不知道觸發事件是從web視圖或另一種觀點,您需要定義它,以便您可以在相應的視圖上設置相同的OnTouchListener

+0

+1。這應該很好。 – Anukool

+0

它適用於禁用觸摸事件,但它不是我喜歡的東西。 – Zizou