单击重叠的UI元素

KNS*_*KNS 4 android android-fragments

我有Fragment一半占了一半Activity.在它背后,一个ListView.问题是,当用户点击其上的任何地方Fragment与行上的一行重叠时ListView,行会被点击并onClick调用它的方法.

一种解决方法是给一个onClickLinearLayout了在Fragment布局XML文件中,就像这样:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.example.karimnseir.instabeat.IBMenuFragment"
    android:background="@color/material_blue_grey_950"
    android:onClick="doNothing">
Run Code Online (Sandbox Code Playgroud)

我不认为这是非常优雅的,因为我必须doNothing为每个Activity使用它的人添加一个方法Fragment

如果没有办法阻止onClicks在元素后面被调用Fragment,那么如何在onClick没有虚拟方法的情况下仍然给它一个null 呢?

谢谢

小智 5

而不是设置android:onClick你可以设置android:clickable="true".这将View捕获点击而不将其传递给后面的视图.