在 TabHost 内更改活动转换

2023-12-14

我已经成功地使用更改了活动之间的转换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);
}

因此,我相信在我尝试覆盖它们之后,待处理的转换将被覆盖。

我应该在其他地方这样做吗? 我还犯了其他愚蠢的错误吗?

Thanks !


我在从片段中调用 overridePendingTransition() 时遇到了类似的问题,因为片段没有定义 overridePendingTransition() 方法。

我用以下方法解决了它:

getActivity().overridePendingTransition(R.anim.enterAnim, R.anim.exitAnim);

希望能帮助到你。该片段位于 TabHost 内。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 TabHost 内更改活动转换 的相关文章

随机推荐