有两种活动可以同时使用相同的背景吗?

时间:2015-07-05 05:32:46

标签: android android-intent android-activity

我的主要活动和我的listview活动都使用相同的背景图像,我使用各自的xml文件来设置背景图像。在mainactivity中有一个按钮,该按钮进入listview活动以从一组选项中进行选择。一切正常但是当你去listview活动时,即使他们使用相同的背景,listview的背景有点在主要活动的背景上滑到listview活动,即使它仍然是相同的背景和我希望它只是转到列表视图而不会看到在现有背景上滑动的相同背景。我该如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

您要求的是Lollipop中提供的活动共享元素。

Intent intent = new Intent(this, Activity2.class);
ActivityOptions options = ActivityOptions
            .makeSceneTransitionAnimation(this, sharedview,"sharedviewname");
startActivity(intent, options.toBundle()); 

目前尚未提供向后兼容性。

WorkAround解决方案:

  1. 将Activity1的整个视图设置为不可见状态(期望背景视图)。
  2. 拥有透明背景的Activity2。
  3. 启动Activity2。

答案 1 :(得分:0)

如果您使用两个活动,则转换使用

Intent iSecondActivity = new Intent(FirstActivity.this,SecondActivity.class);
FirstActivity.this.startActivity(iSecondActivity);
FirstActivity.this.overridePendingTransition(0, 0);

它将删除所有默认活动切换效果

答案 2 :(得分:0)

在开始新活动时写下intent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);标志,它将删除活动的过渡效果。

例如,ListBox.SelectedItem