我创建了一个包含ImageView和SlidingDrawer的RelativeLayout。我在ImageView上设置了onClickListener,在SlidingDrawer的内容部分设置了另一个。当SlidingDrawer打开并单击其内容部分时,将触发ImageView的onClick事件。
为什么呢?不是SlidingDrawer在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>
答案 0 :(得分:1)
尝试通过执行拦截鼠标 boolean onInterceptTouchEvent(MotionEvent事件)
给予doc,这种方法“拦截所有触摸屏动作事件”。
如果要使用SlidingDrawer处理特定的MotionEvent(给出参数),则返回true。
同样查看onTouchEvent(MotionEvent event)
:)