編集: 要約すると、ビュー遷移にアニメーションがあると問題が発生しますが、ビューからアニメーションを削除するとすぐに、ビューフリッパーで表示されていない子が表示されなくなります。
ビュー フリッパーを作成しましたが、うまく動作します。アニメーションも設定しましたが、たとえば 1 つのバグが発生しました。. 以下の画面のように、ビューが翻訳されたランダムな行をクリックすると、1 つのリスト ビューが表示されます。コード:((ViewFlipper)findViewById(R.id.in_app_vf)).setDisplayedChild(1);
その後、戻るボタンをクリックすると最初のビューが表示されますコード:((ViewFlipper)findViewById(R.id.in_app_vf)).setDisplayedChild(0);
しかし問題は、editTextがあった同じスペースをクリックするとキーボードが呼び出されることです。そのため、リスト ビューは、editText フィールドがあった位置ではクリックできません。どこに問題があるのか わかりません。
私が使用するアウトアニメーション:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator"
android:fillAfter="true">
<translate
android:fromXDelta="0"
android:toXDelta="-100%p"
android:duration="700"/>
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:duration="900" />
</set>
未使用のビューを削除しようとしたコードですが、機能していません:
private void setAllTheOtherViewGone(){
for(int i = 0; i <= ((ViewFlipper)findViewById(R.id.in_app_vf)).getChildCount()-1;i++)
if(i != ((ViewFlipper)findViewById(R.id.in_app_vf)).getDisplayedChild()){
((ViewFlipper)findViewById(R.id.in_app_vf)).getChildAt(i).setVisibility(View.GONE);
((ViewFlipper)findViewById(R.id.in_app_vf)).getChildAt(i).setVisibility(View.INVISIBLE);
}
}