我开发了一系列图像按钮,当我将手机转向横向和背面时,它会消失。这是为什么?
答案 0 :(得分:1)
查看onSaveInstanceState()
和onRestoreInstanceState()
方法。
这里有一些相关信息:http://developer.android.com/reference/android/app/Activity.html
基本上,当您旋转屏幕时,视图正在被销毁并重新创建,因此您需要在onSaveInstanceState()
中保存相关信息,以便在onRestoreInstanceState()
中重建视图时,视图将返回到您的位置希望它成为。
答案 1 :(得分:0)
因为除非您覆盖它,否则旋转手机会完成活动并重新启动新活动。除非在onCreate中添加了新按钮,否则新按钮将没有添加按钮。您可能的解决方案是:
1)通过将android:configChanges =“orientation | resize”添加到活动的清单中来覆盖重新创建功能
或
2)在onSaveInstanceState中创建一个对象,其中包含您为应用程序保存所需的所有信息,包括您添加此按钮的事实。在onRestoreInstanceState中获取此信息并读取按钮,如果需要
除非你有横向和纵向的单独布局文件,否则解决方案1要容易得多,应该可以使用。
答案 2 :(得分:0)
当手机更改方向时,将破坏并重新创建当前活动。
您应该保存实例状态,并在重新创建活动时恢复以前保存的实例状态。
检查http://developer.android.com/training/basics/activity-lifecycle/recreating.html以获取更多信息。
希望这有帮助