在我的类 View 中,手机摄像头将打开,程序会在用户从手机摄像头拍摄照片后显示位图,但同时用户将屏幕旋转到“横向”位图将消失, Activity 的 oncreate() 将再次加载并且然后相机将再次打开。
我不知道用 onRetainNonConfigurationInstance() 或 onSaveInstanceState() 保存位图。
问题是我如何在用户旋转手机之前保存位图(从手机摄像头中获取),这样即使手机处于横向模式,屏幕上也会显示相同的位图?
---编辑--- 添加到 AndroidManifest.xml 是获取保存状态的好方法吗?
最佳答案
将其保存在 SaveInstanceState 上:
@Override
public void onSaveInstanceState(Bundle toSave) {
super.onSaveInstanceState(toSave);
toSave.putParcelable("bitmap", bitmap);
}
并在创建时将其取回:
@Override
public void onCreate(Bundle savedState) {
super.onCreate(savedState);
if (savedState != null) bitmap = savedState.getParcelable("bitmap");
}
关于android - 如何使用 onRetainNonConfigurationInstance() 为屏幕方向保存位图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5862937/