Android setOnTouchListener触发子按钮

时间:2015-12-22 17:01:18

标签: android event-handling touch

您好我有查看。

content = this.getChildAt(1);

我申请了setOnTouchListener

    content.setOnTouchListener(new OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            return MainLayout.this.onContentTouch(v, event);
        }
    });

如果“视图”不包含任何按钮或可点击元素,则表示没问题。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff" >

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:gravity="center"
    android:text="Layout 1"
    android:textColor="#1a1a1a"
    android:textSize="20sp" />
</RelativeLayout>

但是当View包含例如按钮时,我拖动按钮时没有任何反应。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:id="@+id/wrapper"
android:layout_height="match_parent"
android:background="#008000"
android:orientation="vertical" >
<TextView
    android:id="@+id/someTxt"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:text="Layout2"
    android:textColor="#000000"
    android:textSize="20sp" />
<Button
    android:id="@+id/btnUploadImg"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/btnUpload"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="20dp"
    android:background="@color/btn_bg"
    android:onClick="UploadImgs"
    android:paddingLeft="20dp"
    android:paddingTop="20dp"
    android:paddingBottom="20dp"
    android:paddingRight="20dp"
    android:text="@string/btnUploadToServer"
    android:textColor="@color/white" />
</RelativeLayout>

我想在按钮拖动时触发View setOnTouchListener,我也想在点击按钮时触发click事件。

KInd问候。

0 个答案:

没有答案