私のアプリケーションにはFacebookのようなメニューがあります。これには多くのスレッドがあり、実際には画面のスクリーンショットを取り、その画像を右にスライドさせてメニューを左側に表示し、一部のトランジションでスライド画像を表示するライブラリを使用することをお勧めします。しかし、その場合、右のレイアウトはその画像からクリック可能ではありません。Facebookのスライドスライドアウトメニュー(ライブラリを使用していません)
しかし、私はすでにルートレイアウトメニューレイアウトとコンテンツ・レイアウトを持っています。持っているそれをやっていくつかの他の方法を持っていますしかし、ルートレイアウトは左に向かっていくらかの負のマージンが設定されているため、表示されません。ユーザーは、メニューボタンを押すとthis-
、メニューのレイアウトが右とルートレイアウトの左余白にスライドさせるようなので、今、私たちが見たものは0に設定this-
さて、本当の問題は、私はいくつかのアニメーションとレイアウトの両方をスライドしたいここ
を開始します。そのため、メニューレイアウト&コンテンツレイアウトをアニメーション化すると、同じアニメーションを適用していても、両方のレイアウトのアニメーションは同じ速度ではありません。だから私はに右に/左にシフトルートレイアウトだけを試してみました。しかしそうすることで、何も画面に表示されません。どこが間違っているのですか?マージンを設定する方法はここに示されています。
int width = leftLayout.getWidth();
isLayoutShown = !isLayoutShown;
if(isLayoutShown){
rootLayoutParams.setMargins(0, 0, 0, 0);
rootLayout.setLayoutParams(rootLayoutParams);
}else{
rootLayoutParams.setMargins(-width, 0, 0, 0);
rootLayout.setLayoutParams(rootLayoutParams);
}
あなたはこれに運がありましたか? – EGHDK
はい、問題は何とか解決されます。以下の答えを確認してください。 – Rajkiran
この質問に対する回答を見てみるといいかもしれません。http://stackoverflow.com/q/17884277/1491212 –