Android 更改设备方向时,我丢失了文本输入,如何修复此问题

Android 更改设备方向时,我丢失了文本输入,如何修复此问题,android,layout,orientation,Android,Layout,Orientation,我有一个倒计时应用程序,当我在手机上从垂直方向更改为水平方向时,倒计时文本不再显示,当我将其切换回时,倒计时文本不会返回,除非我再次点击开始,它本来不应该在那里,因为按钮在启动时会变为暂停,但当我翻转它时,倒计时指示灯变为空白,按钮显示开始,即使倒计时正在运行,并显示onFinish()。这是因为Dalvik vm在设备旋转时破坏活动并创建一个新的活动,因此,您必须找到某种方法来保存活动及其子对象的状态,可能会覆盖其中一个方法,onFinish()、onStop()或onDestroy()如果活

我有一个倒计时应用程序,当我在手机上从垂直方向更改为水平方向时,倒计时文本不再显示,当我将其切换回时,倒计时文本不会返回,除非我再次点击开始,它本来不应该在那里,因为按钮在启动时会变为暂停,但当我翻转它时,倒计时指示灯变为空白,按钮显示开始,即使倒计时正在运行,并显示onFinish()。

这是因为Dalvik vm在设备旋转时破坏活动并创建一个新的活动,因此,您必须找到某种方法来保存活动及其子对象的状态,可能会覆盖其中一个方法,onFinish()、onStop()或onDestroy()

如果活动重新启动,则需要在销毁活动之前覆盖在此场景中专门调用的
OnRetainOnConfiguration实例。这是安卓网站上的一篇文章,详细介绍了这一点。

没关系,我找到了。我在布局中设置了方向:

 <LinearLayout
 android:orientation="vertical">

从那以后,我所要做的就是将这个添加到我正在使用的AndroidManifest中

    <activity android:name="TimerActivity" android:configChanges="keyboardHidden|orientation"/>


我的代码中有一部分将倒计时发送到服务中,可以解决这个问题吗?我也暂时在想,我可以锁定方向吗?只是想评论一下,你的直线布局的方向与你手机的方向无关。它仅指定子元素在布局中的放置方向。