Android 编辑文本在屏幕旋转后不改变
Android edit text doesn't change after screen rotates
我最近开始 Android 的工作,并一直在尝试使用新的 Andorid Jetpack 架构方法来制作我的应用程序。具体来说,我看到他们通常使用 ViewModel 来存储 UI 数据,这样当屏幕旋转之类的事情发生时,数据就不会丢失。我有一个带有两个编辑文本字段的简单登录屏幕,当我在其中写入内容时,然后旋转屏幕,数据会保留。所以基本上问题是:
为什么我不丢失编辑文本的数据
我应该什么时候使用这个 ViewModel 东西。人们是在简单的情况下使用它,比如只有两个字符串的基本登录屏幕,还是仅在较大的活动中使用它。
我对这些 LifeCycle 观察者也有同样的疑问。我知道它们是如何工作的,但是我应该在上面提到的简单情况下使用它们,还是在更复杂的情况下使用这些东西更好,因为我真的不知道如何处理我的基本登录屏幕除了 OnCreate() 中的基本内容之外 ?
查看此图片以了解 ViewModel 的生命周期以及为什么您的 EditText
数据不会丢失。
您应该了解 MVVM 模式(Model View Viewmodel)以了解如何使用 ViewModel
。看看这个CodeLabs from Google.
我最近开始 Android 的工作,并一直在尝试使用新的 Andorid Jetpack 架构方法来制作我的应用程序。具体来说,我看到他们通常使用 ViewModel 来存储 UI 数据,这样当屏幕旋转之类的事情发生时,数据就不会丢失。我有一个带有两个编辑文本字段的简单登录屏幕,当我在其中写入内容时,然后旋转屏幕,数据会保留。所以基本上问题是:
为什么我不丢失编辑文本的数据
我应该什么时候使用这个 ViewModel 东西。人们是在简单的情况下使用它,比如只有两个字符串的基本登录屏幕,还是仅在较大的活动中使用它。
我对这些 LifeCycle 观察者也有同样的疑问。我知道它们是如何工作的,但是我应该在上面提到的简单情况下使用它们,还是在更复杂的情况下使用这些东西更好,因为我真的不知道如何处理我的基本登录屏幕除了 OnCreate() 中的基本内容之外 ?
查看此图片以了解 ViewModel 的生命周期以及为什么您的 EditText
数据不会丢失。
您应该了解 MVVM 模式(Model View Viewmodel)以了解如何使用 ViewModel
。看看这个CodeLabs from Google.