6

在我的课堂视图中,手机摄像头将被打开,并且程序在用户从手机摄像头拍照后显示位图,但同时用户将屏幕旋转到“横向”位图将消失,活动的 oncreate() 将再次加载,然后相机将再次打开。

我不知道使用 onRetainNonConfigurationInstance() 或 onSaveInstanceState() 保存位图。

问题是如何在用户旋转手机之前保存位图(取自手机摄像头),这样即使手机是横向模式,屏幕上也会显示相同的位图?

---编辑--- 添加到 AndroidManifest.xml 是获得保存状态的好方法吗?

4

1 回答 1

9

将其保存在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");
  }
于 2011-05-02T22:06:19.513 回答