何らかの理由でアニメーションを再生しない単純なフラグメントの切り替えにますます不満を感じています。
フラグメントの切り替え自体が機能し、新しいフラグメントが表示されます。ただし、遷移はありません。
誰かが理由を理解するのを手伝ってくれますか? これが私のフラグメントトランザクションコードです:
public class FullscreenActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fullscreen);
}
@Override
protected void onResume() {
super.onResume();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.setCustomAnimations(R.anim.slide_out_right, R.anim.slide_out_right);
transaction.replace(R.id.root, new InitialFragment(),"DDDDD");
transaction.commit();
}
}, 3000L);
}
}
ここで、slide_out_right.xml では、名前が誤解を招きます。アニメーション パラメータを台無しにしないように、より基本的な名前に設定しました。
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:valueFrom="0"
android:valueTo="1"
android:propertyName="alpha"
android:duration="@android:integer/config_mediumAnimTime" />
いずれにせよ、何の効果も見られません。setTranstition(FragmentTransiniot.TRANSIT_ ALLMOST_ALL_OF_THE_FLAGS ) を使用してみましたが、何も効果がないように見えました。
私はサポート ライブラリ経由でフラグメントを使用していません。Android 4.1.2 を搭載したルート化された Galaxy S でテストしています。