我新的
Android.我已经写了几个程序,并在手机上尝试过.当我切换方向,就像我的手机重启程序.我的所有变量都被重置.实际上,唯一不能重设的是编辑文本视图中的文本.是什么原因造成的?我该如何阻止?我已经尝试看谷歌和堆栈溢出,但所有我看到的是如何从视图方向改变所有在一起.我甚至在一个程序中尝试使用get text方法设置我的变量,但这不起作用.
解决方法
When I switch orientations its like my phone restarts the program.
为了准确,当前可见的活动被完全破坏并重新创建.您的“应用程序”的其他组件可能受到或不会受到影响.
What causes this? How can I stop it?
它的设计和停止它,你可能也可能不想这样做.
如上所述,可以指定您想自己处理“配置”更改(例如方向),甚至强制一个(例如横向或纵向).
然而,在许多情况下,应用程序开发人员可能会选择根据设备是否处于一个方向来更改布局.一些布局可能在纵向工作,但不是景观(反之亦然),并且设计方法(销毁/重新创建当前可见的活动)的目的是为了适应这一点.
如果开发人员选择不处理配置更改本身或强制指定方向,正确的处理方式是确保在“易失性”UI元素(如EditTexts)中输入的所有数据都能正确保存并在方向更改后重新创建.
为此,了解活动生命周期是至关重要的,因为利用在整个生命周期中调用的各种Activity方法来保存/恢复数据.
基本阅读