Android-在onRestoreInstanceState期间操纵视图位置

Android-在onRestoreInstanceState期间操纵视图位置,android,android-animation,android-view,Android,Android Animation,Android View,我制作了一个简单的骰子游戏,它使用setTranslationY()方法指示下一次掷骰子时是否应该忽略一个骰子。这一切都很好,只是当我尝试在屏幕旋转后恢复应用程序的状态时,我的恢复方法似乎无法在需要它的视图上使用setTranslationY() 我已经一次又一次地确认,对于所有应该稍微向上推一点的视图,都会调用该方法,但是视图会保持在原来的位置 如果应用程序需要完成onCreate()、onStart()、onRestoreInstanceState()和onResume()的过程才能操作视图

我制作了一个简单的骰子游戏,它使用
setTranslationY()
方法指示下一次掷骰子时是否应该忽略一个骰子。这一切都很好,只是当我尝试在屏幕旋转后恢复应用程序的状态时,我的恢复方法似乎无法在需要它的视图上使用
setTranslationY()

我已经一次又一次地确认,对于所有应该稍微向上推一点的视图,都会调用该方法,但是视图会保持在原来的位置


如果应用程序需要完成
onCreate()
onStart()
onRestoreInstanceState()
onResume()
的过程才能操作视图,请就如何实现这一点提出建议。我需要在每次设备轮换时都能保持这种状态。

你可以通过通知Android你想自己做什么来保持应用程序的状态,而不是让操作系统在用户倾斜屏幕时丢弃并重建整个
活动。您可以通过在
AndroidManifest.xml
中的
Activity
条目中添加
android:configChanges
属性来实现这一点:

<activity android:name=".YourActivity"
          android:configChanges="orientation"
          android:label="@string/app_name">


这将有希望保留动画
视图的状态。

您可以通过通知Android您想要自己保存应用程序的状态,而不是让操作系统在用户倾斜屏幕时丢弃并重建整个
活动。您可以通过在
AndroidManifest.xml
中的
Activity
条目中添加
android:configChanges
属性来实现这一点:

<activity android:name=".YourActivity"
          android:configChanges="orientation"
          android:label="@string/app_name">


这将有望保持动画视图的状态。

您能否共享代码,尤其是保存和恢复数据的方式?您能否共享代码,尤其是保存和恢复数据的方式?确实如此!谢谢,我将仔细阅读文档,以便正确理解configChanges标记。它确实做到了!谢谢,我将仔细阅读文档,以便正确理解configChanges标记。