現在のプロジェクトでは、カスタム アニメーションを使用して、正常に動作するアクティビティを切り替えています。
しかし、このアニメーションはすべてのアクティビティ スイッチで使用されるため、フラグメント ベースのPreferenceActivityは少し場違いに見えます。
私はすでに onBuildStartFragmentIntent の Transition をオーバーライドしようとしました (これは、新しいアクティビティが開始されることを示す唯一の指標のようです。
@Override
public Intent onBuildStartFragmentIntent (String fragmentName, Bundle args, int titleRes, int shortTitleRes) {
this.overridePendingTransition(R.anim.slideinleft, R.anim.slideoutleft);
return super.onBuildStartFragmentIntent(fragmentName, args, titleRes, shortTitleRes);
}
しかし、これは機能していません。
編集: ブランデルのコメントの後、質問をもう一度読みました。より具体的にする必要があります。overridePendingTransition が機能していないのは、実際には PreferenceActivity 自体ではありません。別の Activiy から PreferenceActivity を開くと、Blundell のブログで説明されているような同様の方法で動作しています。
私が意味したのは、PreferenceActivity が小さな画面で使用される場合、ペインは 1 つしかないということです。その後、ヘッダーがクリックされると、新しいアクティビティが開かれます。ただし、この動作はすべて PreferenceActivity によって処理されます。ヘッダーがクリックされ、PreferenceActivity が新しいアクティビティを開く場合、この新しい画面をカスタム アニメーションで開きたいと思います。