gpt4 book ai didi

android - 如何在切换 Activity 之间停止动画?

转载 作者:行者123 更新时间:2023-11-29 20:33:44 25 4
gpt4 key购买 nike

我正在开发一个安卓应用。应用程序中有两个 Activity 。在操作栏中,我有一个按钮可以打开另一个 Activity 。但是当我点击按钮时,默认的 android 动画发生在切换 Activity 之间。我尝试使用 intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);overridePendingTransition(0, 0); 但无济于事。这种方法不起作用。我的应用程序的最小 sdk 是 10。

我想要的。

我希望点击按钮时没有动画。

我的代码

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId())
{
case R.id.action_button1:
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
finish();
overridePendingTransition(0, 0);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);

}
return true;

}

最佳答案

您正在调用 finish()然后尝试通过向 Intent 添加标志来覆盖动画。在 startActivity() 中使用它之前,您必须将标志添加到 Intent 中.试试这个而不是你的代码:

Intent intent = new Intent(this, SecondActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
startActivity(intent);
overridePendingTransition(0,0); //0 for no animation
finish();

或者:

Intent intent = new Intent(this, SecondActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
overridePendingTransition(0,0); //0 for no animation

如果由于某种原因Inteng.FLAG_ACTIVITY_CLEAR_TOPfinish()不适合你,尝试设置 android:noHistory=true为你的 <activity>Manifest.xml .参见 here .

关于android - 如何在切换 Activity 之间停止动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31628459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com