失去变量切换方向

JBr*_*901 10 variables android orientation

我刚接触到android.我写了几个程序并在手机上试了一下.当我切换方向时,它就像我的手机重启程序一样.我的所有变量都被重置了.实际上,唯一不重置的是编辑文本视图中的文本.是什么导致这个?我怎么能阻止它?我试过在谷歌和堆栈溢出上看它,但我所看到的是如何通过一起改变视图方向.我甚至尝试在一个程序中使用get text方法设置我的变量,但这不起作用.

Squ*_*onk 8

当我切换方向时,它就像我的手机重启程序一样.

确切地说,目前可见的Activity是完全被破坏和重建.您的"申请"的其他组成部分可能受到影响,也可能不受影响.

是什么导致这个?我怎么能阻止它?

这是设计和停止它,你可能会或可能不想这样做.

如前所述,可以指定您想要自己处理"配置"更改(例如方向),甚至只强制一个(例如横向或纵向).

但是,在许多情况下,应用开发者可能会选择根据设备是在一个方向还是另一个方向来更改布局.一些布局可以在纵向上正常工作但在横向上不能正常工作(反之亦然),并且设计方法的目的(破坏/重建当前可见的Activity)旨在适应这种情况.

如果开发人员选择不自行处理配置或强制执行特定方向,处理事情的正确方法是确保在"易变"UI元素(例如EditTexts)中输入的所有数据都被正确保存并在方向更改后重新创建.

要做到这一点,了解Activity生命周期至关重要,因为利用在Activity整个生命周期中调用的各种方法来保存/恢复数据.

基本阅读......

运行时更改

活动生命周期

应用基础知识