保留TextView颜色的状态

时间:2020-10-18 10:56:42

标签: android firebase kotlin google-cloud-firestore data-persistence

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

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

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

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

1 个答案:

答案 0 :(得分:0)

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

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