アプリにスライド可能なメニューを実装する必要があります。ユーザーは、タップして左右に移動することで、表示/非表示を切り替えることができる必要があります。
これを実装するために、 FrameLayout を拡張するカスタム SlidableFrameLayout を作成しました。onTouchEventメソッドをオーバーライドすることで、スライドの位置を計算して呼び出します
private void setLeftLayout(int left) {
layout(left, getTop(), getRight(), getBottom());
}
SlideableFrameLayoutの位置を変更します。すべて正常に動作しますが、(EditText にフォーカスした後) キーボードで表示すると、SlideableFrameLayoutは左の値を 0 に変更するため、メニューが閉じられている場合は開かれます。キーボードを非表示にすると同じことが起こります (通常、レイアウト メソッドの呼び出しを妨げるすべてのアクションに表示されます)。
私はそれを修正する方法を発明することはできません。私たちを手伝ってくれますか?追加情報が必要な場合は、添付します。ありがとう