次のUIでは、画面全体をオーバーレイする下にこれがあります。 LinearLayoutは透過的であり、その下のコントロールをクリックまたはタッチ可能にすることができます。基本的に、このLinearLayoutの下のリストとクリックコントロールをスクロールできます。どうすればそれを無効にできますか?
添付の例を参照してください。
ありがとうございました
<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>
XMLのLinearLayoutにAndroid:clickable="true"
プロパティを設定するだけで、クリックが通過するのを防ぐことができます。クリックリスナーは必要ありません。
線形レイアウトにクリックを割り当て、それで解決しました。正直なところ、そもそもこのように機能するべきではありませんが、それで問題は解決しました。クリックは空です。
私にとってうまくいったのは、XMLの内部RelativeLayoutの前にLinearLayoutを配置することでした。