アイテムのリストビューがあり、それらのアイテムの 1 つが押されたときに画面の右側から 3 つのボタンがスライドインするようにします。次に例を示します。
クリックされていない場合のリストビュー項目:

クリックされた場合のリストビュー項目:

また、半透明の灰色のオーバーレイを介して選択されたプロジェクトを「薄暗くする」ことにも興味があります。これは可能ですか?これを行うための最良の方法は何ですか? 私は調査を行ってきましたが、すべてがジェスチャー指向のようで、アイテムの削除に関するものです。
ボタンのスライドはそれほど難しくありません。あなたがする必要があるのは、それらを親コンテナー (たとえば、水平方向LinearLayout) にラップすることです。親コンテナの可視性を に設定しandroid:visibility="invisible"ます。次に、コード内で、作成した親コンテナーで左から右にスライドするトランジション アニメーションを開始するように項目を設定OnClickListenerします。ListViewアニメーションを開始するときは、必ず親コンテナーの可視性を「可視」に設定してください (たとえば、コード内のアニメーションにアタッチされた内のonAnimationStart()メソッド内)。AnimationListener
アニメーションは XML で保存でき、次のようになります。
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate android:fromXDelta="-100%" android:toXDelta="0%"
android:fromYDelta="0%" android:toYDelta="0%"
android:duration="400"/>
</set>
これは明らかに必要なすべてではありませんが、正しい方向に向けるのに役立つことを願っています. View減光に関しては、アイテム ビュー全体を半透明の背景色 (#88ffffff など)の基本色でオーバーレイすることで、以前にこれを行ったことがあります。アイテムを淡色表示する必要があるまで、可視性を「gone」に設定したままにします。
編集:クリック リスナー内の翻訳アニメーションは次のようになります。
TranslateAnimation translateAnim = (TranslateAnimation) AnimationUtils.loadAnimation(this, R.anim.your_slide_in_animation);
translateAnim.setInterpolator(new LinearInterpolator());
translateAnim.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
buttonParentView.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationEnd(Animation animation) {}
@Override
public void onAnimationRepeat(Animation animation) {}
});
buttonParentView.startAnimation(translateAnim);