我已成功使用overridePendingTransition()
更改了活动之间的转换。
不幸的是,当我使用TabActivity
并在每个选项卡中使用活动时。当选项卡内容内的那些活动之一启动另一个活动时,overridePendingTransition()
似乎不起作用。
我基本上有一个TabActivity
,在其中驻留了一个ListView
活动。我正在做的是单击项目时,我启动项目详细信息的活动。
此新活动的过渡动画不会被overridePendingTransition()
覆盖
我基本上是这样做的:
private Activity owner;
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent programActivity = new Intent().setClass(view.getContext(), ProgramActivity.class);
Program program = (Program) parent.getItemAtPosition(position);
programActivity.putExtra("programID", program.getId());
owner.startActivity(programActivity);
owner.overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
}
因此,我认为在尝试覆盖未完成的过渡后,它们将被覆盖。
我应该在其他地方吗?
我在犯其他愚蠢的错误吗?
谢谢 !
最佳答案
我从Fragment内调用overridePendingTransition()时遇到了类似的问题,因为Fragments中没有定义overridePendingTransition()方法。
我使用以下方法解决了问题:
getActivity().overridePendingTransition(R.anim.enterAnim, R.anim.exitAnim);
希望能帮助到你。片段位于TabHost中。