java - Android View 关闭某些 View 的隐式状态保留

标签 java android

我有 custom View 在同一个 Activity 中多次动态添加。

每个自定义 View 实例都有一个 TextView 子对象。 TextView 有它的 ID 并且对于每个 View 实例都是相同的。

对于每个自定义 View 实例,我在创建 Activity 时为 TextView 设置不同的 Text。 当我旋转屏幕时, Activity 被重新创建,但现在每个 TextView 显示相同的 Text (文本与最后一个实例的文本相同)。

这是因为实例状态的保存和恢复会自动保存一些信息,但这些信息显然与 ID 相关联,在我的情况下会产生问题。

有没有办法禁用特定 View 的自动状态保留?

是否有属性或设置或一些解决方法?

最佳答案

您可以使用 View.setSaveEnabled (boolean enabled)方法。

也可以通过 xml 使用 saveEnabled 属性 android:saveEnabled="false"

禁用自动状态保存

关于java - Android View 关闭某些 View 的隐式状态保留,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15527456/

相关文章:

java - 如何将数据从 Activity 或 fragment 传递到 View 模型?

java - 单元格和指针变量

java - 流收集与 map 收集

java - 将对象保存到 firebase db 时出现意外错误? (mClassMapper.access$200(com.google.firebase :firebase-database@@16. 0.5:47))

android - Admob SMART_BANNER 尺寸

android - 如何制作一个简单的触摸屏测试应用?

android - 在 Android 中将数据 append 到文本文件

java - 桌面应用程序中的数据一致

android - 如何将 ParseLoginUI 添加到 Android Studio 项目?

android - 创建 View 模型的方式有什么区别?