3

私はアンドロイドが初めてで、スライドイベントを検出しようとしています。リスナーを webview または textview に追加すると、完全に正常に動作します。

WebView myWebView = (WebView) findViewById(R.id.myWebview);        
myWebView.setOnTouchListener(myListener);

ただし、いくつかのアイテムを含むlinearlayoutを作成してから、リスナーを追加しようとすると、何も起こりません:

LinearLayout ll = (LinearLayout)findViewById(R.id.myLinearLayout);
ll.setOnTouchListener(myListener);

私が知る限り、 WebView と LinearLayout の両方が View クラスを拡張しているため、 setOnTouchListener は両方で問題なく動作するはずです。私の質問は、線形レイアウト ビューで動作させるにはどうすればよいですか? レイアウトのすべての子のリスナーを個別に設定しようとしましたが、探しているものではありません。たとえば、これが私の xml の場合:

<LinearLayout
        android:id="@+id/myLinearLayout"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" 
        android:orientation="vertical">

        <RadioButton
            android:id="@+id/radioButton1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="RadioButton" />

        <RadioButton
            android:id="@+id/radioButton2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="RadioButton" />

        <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="fill_parent" >

            <Spinner
                android:id="@+id/spinner1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1" />

            <Spinner
                android:id="@+id/spinner2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1" />

        </LinearLayout>

</LinearLayout>

次に、レイアウトの実際の子供、つまりラジオボタンまたはスピナーをスライドすると、スライドイベントが検出されます。しかし、レイアウトの空きスペースをスライドしても何も起こりません

どんな助けや指針も高く評価されます。前もって感謝します!

4

1 に答える 1