android - overdraw layout允许通过LinearLayout进行触摸

时间:2012-04-12 17:57:41

标签: android controls touch overlay android-linearlayout

在以下用户界面中我将下面的内容覆盖整个屏幕。 LinearLayout是透明的,允许其下方的控件可点击或触摸。基本上我可以滚动此LinearLayout下面的列表以及单击控件。如何禁用它?

参见附件示例。enter image description here

谢谢

<RelativeLayout
     xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/rlExtNavbar" 
    android:orientation="vertical"
    android:layout_width="match_parent" 
    android:layout_height="match_parent"
    android:gravity="fill_vertical"
    android:layout_gravity="fill_vertical"
    android:background="@color/transparent" xmlns:tools="http://schemas.android.com/tools" tools:ignore="Overdraw">
    <RelativeLayout
        android:id="@+id/expandedNavbarLayout" 
        android:orientation="vertical"
        android:layout_width="fill_parent" 
        android:layout_height="wrap_content" >
    </RelativeLayout>
    <LinearLayout
        android:id="@+id/transparentLayout" 
        android:orientation="vertical"
        android:layout_width="match_parent" 
        android:layout_height="wrap_content"
        android:layout_below="@id/expandedNavbarLayout"
        android:focusableInTouchMode="false"
        android:focusable="false"
        android:background="@color/fulltransparent">
    </LinearLayout>

</RelativeLayout>

3 个答案:

答案 0 :(得分:113)

在XML中设置LinearLayout的android:clickable="true"属性可以防止点击进入 - 无需点击监听器。

答案 1 :(得分:2)

点击线性布局并解决了它。老实说,它不应该像这样开始,但这解决了问题。点击是空的。

答案 2 :(得分:0)

对我来说有用的是将LinearLayout放在xml内部RelativeLayout之前。

相关问题