保留TextView颜色的状态

问题描述

我正在 LinearLayout 上渲染一些 TextViews 。这些 TextViews 保留用户可以选择的时间。如果用户选择它,则 TextView的颜色将设置为绿色。如果用户再次选择 TextView (时间),则它将恢复为灰色。

因此,该行为应为:如果未选择 TextView ,请保持灰色。如果选择了 TextView ,则变为绿色。这些 TextViews 应该仅在用户按下时更改颜色。

每当我在 LinerLayout 上滚动时,我都设法保留了 TextView颜色的状态。但是,如果我按回去并保留活动,则 TextViews 都将重置为灰色。

是否可以保存 LinearLayout 的实例,以及 Firestore 的元素?如果您有任何建议,请告诉我。

解决方法

是否可以使用Firestore保存LinearLayout的实例及其元素?

否,这是不可能的。 LinearLayout不是supported data-type。您可以做的是,使用事件监听器将按钮的状态存储在Firestore和keep it always in sync with the server中。因此,每次选择TextView时,都要更新服务器上的状态。如果您退出活动并再次打开它,请从服务器读取上次更新的值。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...