如何使用onRetainNonConfigurationInstance()为屏幕方向保存位图?

bar*_*zos 6 android state bitmap android-image android-layout

在我的班级视图中,手机摄像头将被打开,程序在用户从手机摄像头拍照后显示位图,但同时用户将屏幕旋转到"风景"位图将消失,活动的oncreate()将再次加载然后摄像头将再次打开.

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

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

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

dmo*_*mon 9

保存onSaveInstanceState:

  @Override
  public void onSaveInstanceState(Bundle toSave) {
    super.onSaveInstanceState(toSave);
    toSave.putParcelable("bitmap", bitmap);
  }
Run Code Online (Sandbox Code Playgroud)

并重新创建:

 @Override
  public void onCreate(Bundle savedState) {
    super.onCreate(savedState);
    if (savedState != null) bitmap = savedState.getParcelable("bitmap");
  }
Run Code Online (Sandbox Code Playgroud)