私は、画面全体を満たすためにmatch_parentに設定されている他のアプリに描画するレイアウトを持っています。このレイアウトでは、私はチャットヘッドを持っています。これをドラッグすると、より多くを明らかにするためにクリックできます。通常はレイアウトをwrap_contentに設定し、必要な画面スペースしか占有しませんが、Android SpringAnimationsは大きな親なしでチャットヘッドを投げることができません。Androidアプリ上でクリッピング不可能なレイアウトを描く
問題は私です私は自分のレイアウトを上に描いた背景と対話できません。以前はRelativeLayout root_container
をclickable: false
とfocusable: false
に設定しようとしましたが、それでもプログラムでは何もクリックできません。私のroot_container
がクリックを登録しない解決策はありますか?その内のチャットヘッドは続行できますか?
私はこの問題は他のunfocusable/unclickable質問とは違うと感じました。私が気付いていないことを変える可能性のある "他のアプリを引き出す"機能が含まれています。
<!--Root container - Causing the problems with elements beneath it-->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/root_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!--Small Chat head view that can be dragged around root_container-->
<RelativeLayout
android:id="@+id/collapse_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:orientation="vertical"
android:visibility="visible">
<ImageView
android:id="@+id/floating_icon"
android:layout_width="50dp"
android:layout_height="50dp"
android:src="@drawable/floating_icon"
tools:ignore="ContentDescription" />
<ImageView
android:id="@+id/close_button"
android:layout_width="20dp"
android:layout_height="20dp"
android:layout_marginLeft="40dp"
android:src="@drawable/ic_close"
tools:ignore="ContentDescription" />
</RelativeLayout>
</RelativeLayout>
編集:私はこのようなサービスでは、私のレイアウトを呼び出す:外観を取るための
mFloatingView = LayoutInflater.from(this).inflate(R.layout.layout_floating_view, null);
final WindowManager.LayoutParams params = new WindowManager.LayoutParams(
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.TYPE_PHONE,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
PixelFormat.TRANSLUCENT);
mWindowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
mWindowManager.addView(mFloatingView, params);
ありがとう!
'@ + id/root_container'を' clickable:false' ....と設定して、 '@ + id/collapse_view'を' clickable:true'に設定してみてください...何が起こったかを報告してください – MohammedAlSafwan
@MohammedAlSafwan 'clickable:false'は登録していないようです。チャットヘッドにはonTouchリスナーがあることに注意してください。そのため、既にクリック可能です。 –