2013-04-18 4 views
5

私は、WebViewのみを含む線形レイアウトを持っています。私がしたいことは、Webviewでクリックを無効にすることです。つまり、RelativeLayout bg_stepsContainerに関連付けられたイベントを呼び出すことを意味します。私はアンドロイドを使用しました:クリッカブル=「false」をここでは、コードWebViewのクリックを無効にするにはどうすればよいですか?

<RelativeLayout 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:minHeight="30dp" 
        android:layout_marginLeft="5dp" 
        android:layout_marginRight="5dp" 
        android:layout_marginTop="5dp" 
        android:layout_marginBottom="5dp" 
        android:id="@+id/bg_stepsContainer" 
        > 

       <LinearLayout 
        android:id="@+id/stepslcontainer" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignParentLeft="true" 
        android:layout_alignParentTop="true" 

        android:clickable="false" 
        android:focusable="false" 
        android:focusableInTouchMode="false" > 

        <WebView 
         android:id="@+id/bg_stepsToReproduce" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:clickable="false" 
         android:focusable="false" 
         android:focusableInTouchMode="false" 

         android:textColor="@color/solid_black" /> 

        </LinearLayout> 
        <ImageView 
         android:id="@+id/stepsArrow" 
         android:layout_width="10dp" 
         android:layout_height="10dp" 
         android:layout_alignParentRight="true" 
         android:clickable="false" 
         android:layout_marginRight="10dp" 
         android:layout_marginLeft="10dp" 
         android:layout_centerVertical="true" 
         android:src="@drawable/ic_right_arrow" /> 

</RelativeLayout> 

任意の提案が高く評価されています!

+0

おそらく、これはあなたに役立ちますhttp://stackoverflow.com/questions/4415528/how-to-pass-the-onclick-event-to-its-parent-on-android –

+0

http://stackoverflow.com/questions/3853794/disable-webview-touch-events-in-androidこれは役に立ちます –

答えて

20
mWebView.setOnTouchListener(new View.OnTouchListener() { 
    @Override 
    public boolean onTouch(View v, MotionEvent event) { 
     return true; 
    } 
}); 

アンドロイドを使用する:clickable = "false"はタッチイベントを無効にしません。

+0

もう一度タッチイベントを有効にする方法を教えてください.. –

+0

@GowthamanMはwebviewから 'OnTouchListener'を削除するだけです。 – ubuntudroid

関連する問題