【发布时间】:2016-07-19 03:33:38
【问题描述】:
这不是“如何设置可见性”问题的重复。
我有一个活动 1 和一个活动 2,当我开始活动 2 时,我在侦听器中设置了从 Gone 到 Visible 的布局并且它可以工作,我的问题是,当我返回活动 1 并返回活动 2 时,布局的可见性又回到了 Gone。如何让布局在离开时保持可见?
Activity2.java:
@Override
public void onClick(View v) {
if (FirstLayout.getVisibility() == View.INVISIBLE) {
FirstLayout.setVisibility(View.VISIBLE);
}
}
Activity2.xml:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"
android:id="@+id/oneLayout"
android:animateLayoutChanges="true"
android:orientation="vertical">
<!-- one Button -->
<!-- one TextView -->
</LinearLayout>
【问题讨论】:
-
在 sharedPrefs 中保存视图的可见性状态
-
所以我想这是一个重复。我的道歉
-
在 Activity 的
元素中设置 android:launchMode = "SingleTop",该元素包含要隐藏的布局(在清单文件中),看看会发生什么 -
@Sam 将其添加到清单中并没有发生任何事情,尽管当我将其更改为“singleTask”时它确实有效,但活动需要更长的时间才能启动,并且动画不同且更慢,同样的事情发生了当我将其更改为“singleInstance”时。 “singleTask”和“singleInstance”到底是什么意思?
-
@Sam 好的,我刚刚阅读了有关它的文档,如果我关闭应用程序,它不会保存它。似乎 sharedPrefs 是正确的方法,谢谢
标签: java android xml android-studio mobile