我创建了一个RelativeLayout,其中包含一个ImageView和一个SlidingDrawer。我在ImageView上设置了onClickListener,在SlidingDrawer的内容部分设置了另一个。打开SlidingDrawer并单击其内容部分时,将触发ImageView的onClick事件。
为什么?滑动抽屉不是在ImageView上方吗?
谢谢
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:background="@drawable/background"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/whip"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<SlidingDrawer
android:id="@+id/drawer"
android:layout_width="wrap_content"
android:layout_height="53dp"
android:layout_alignParentBottom="true"
android:orientation="horizontal"
android:handle="@+id/facebook_icon"
android:content="@+id/facebook_contacts">
<ImageView
android:id="@+id/facebook_icon"
android:layout_width="55dp"
android:layout_height="53dp"
android:src="@drawable/facebook_handler_off" />
<ImageView android:id="@+id/facebook_contacts"
android:layout_width="265dp"
android:layout_height="53dp"
android:src="@drawable/facebook_content" />
</SlidingDrawer>
</RelativeLayout>
最佳答案
尝试拦截鼠标的实现
boolean onInterceptTouchEvent(MotionEvent事件)
在文档中,此方法“拦截所有触摸屏运动事件”。
如果要使用SlidingDrawer处理特定的MotionEvent(提供参数),则返回true。
还要看onTouchEvent(MotionEvent event)
:)
http://developer.android.com/reference/android/widget/SlidingDrawer.html#onInterceptTouchEvent(android.view.MotionEvent)