如何在onSaveInstanceState中一次保存所有布尔值?

卡洛延·鲁塞夫(Kaloyan Roussev)

调用onSaveInstanceState时,有什么方法可以“捕获”应用程序的快照吗?

否则,我必须保存每个布尔值并对其进行跟踪,并尽量不要忘记某些内容,例如:

@Override
    protected void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        if (userAvatar != null) {
            outState.putString("userAvatar", userAvatar.toString());
            avatarAlreadyProvided = true;
        }
        if (sexIsOK) {
            outState.putBoolean("sexIsOK", true);
        }
        if (passwordIsOk) {
            outState.putBoolean("passwordIsOk", true);          
        }
        if (passwordAgainIsOk) {
            outState.putBoolean("passwordAgainIsOk", true);         
        }
        if (passwordsMatch) {
            outState.putBoolean("passwordsMatch", true);                
        }
        if (userHasProvidedOwnPhoto != false) {
            outState.putBoolean("userHasProvidedOwnPhoto", true);
            outState.putBoolean("avatarAlreadyProvided", true);
        }
        if (mImageBitmap != null) {
            outState.putParcelable("mImageBitmap", mImageBitmap);
            avatarAlreadyProvided = true;
        }
        if (usernameIsOk) {
            outState.putBoolean("usernameIsOk", true);          
        }
        if (allSignupFieldsProperlyFilled) {
            outState.putBoolean("allSignupFieldsProperlyFilled", true);         
        }
    }

    @Override
    protected void onRestoreInstanceState(Bundle outState) {
        super.onRestoreInstanceState(outState);
        userHasProvidedOwnPhoto = outState.getBoolean("userHasProvidedOwnPhoto");
        avatarAlreadyProvided = outState.getBoolean("avatarAlreadyProvided");
        mImageBitmap = outState.getParcelable("mImageBitmap");
        userAvatar = outState.getString("userAvatar");
        iUserAvatar.setImageBitmap(mImageBitmap);
        allSignupFieldsProperlyFilled = outState.getBoolean("allSignupFieldsProperlyFilled");
        usernameIsOk = outState.getBoolean("usernameIsOk");
        passwordsMatch = outState.getBoolean("passwordsMatch");
        passwordAgainIsOk = outState.getBoolean("passwordAgainIsOk");
        passwordIsOk = outState.getBoolean("passwordIsOk");
        sexIsOK = outState.getBoolean("sexIsOK");


    }

我总是忘记一些东西,然后把它弄乱了。必须有其他方法...。

丹尼尔·福勒

将变量包装到Java类中并使用序列化。您可以使用Gson进行Json序列化。

如何序列化对象并将其保存到Android中的文件中?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Vim或vimdiff中一次退出/退出所有窗口/缓冲区/拆分/选项卡?

来自分类Dev

如何在GitLab中一次克隆组中的所有项目?

来自分类Dev

如何在Rails中一次保存多个记录?

来自分类Dev

无法使用TextScan在Matlab中一次导入所有值

来自分类Dev

如何获取列表并以随机顺序打印所有内容,并在python中一次打印一次?

来自分类Dev

如何在JAXB中一次将@XmlJavaTypeAdapter规则应用于特定类型的所有字段?

来自分类Dev

如何在KeychainItemWrapper中保存布尔值

来自分类Dev

如何在python中一次打印每个循环的所有结果

来自分类Dev

如何在Ubuntu中一次安装所有Perl模块

来自分类Dev

如何在API蓝图中一次指定所有响应的Content-Type?

来自分类Dev

如何在.NET中一次验证所有空文本

来自分类Dev

第一次使布尔值变为真后,如何使布尔值保持真?(迅速)

来自分类Dev

一次布尔值字典测试

来自分类Dev

如何在Rails 6中一次运行所有测试,包括系统测试?

来自分类Dev

如何从具有嵌套对象数组的多个文档中一次获取与mongodoDb查询匹配的所有值

来自分类Dev

如何在emacs中一次性删除所有行?

来自分类Dev

无法使用TextScan在Matlab中一次导入所有值

来自分类Dev

如何在JAXB中一次将@XmlJavaTypeAdapter规则应用于特定类型的所有字段?

来自分类Dev

Propel:如何在一个循环中一次从数据库中检索所有元素?

来自分类Dev

如何在Grails中一次保存所有收藏

来自分类Dev

如何在KeychainItemWrapper中保存布尔值

来自分类Dev

如何在python中反转列表中的所有布尔值?

来自分类Dev

如何在WinSCP中一次重新连接所有会话/选项卡?

来自分类Dev

如何在表单中一次性获取所有输入值

来自分类Dev

如何在localstorage中一次保存数组和对象?

来自分类Dev

如何在 SQL Server 中一次选择具有相同发票编号的所有记录

来自分类Dev

如何在 SQL Server SP 中一次重命名所有变量

来自分类Dev

如何在循环中一次显示值

来自分类Dev

如何在 react js 中一次更新嵌套对象中所有键的值?

Related 相关文章

  1. 1

    如何在Vim或vimdiff中一次退出/退出所有窗口/缓冲区/拆分/选项卡?

  2. 2

    如何在GitLab中一次克隆组中的所有项目?

  3. 3

    如何在Rails中一次保存多个记录?

  4. 4

    无法使用TextScan在Matlab中一次导入所有值

  5. 5

    如何获取列表并以随机顺序打印所有内容,并在python中一次打印一次?

  6. 6

    如何在JAXB中一次将@XmlJavaTypeAdapter规则应用于特定类型的所有字段?

  7. 7

    如何在KeychainItemWrapper中保存布尔值

  8. 8

    如何在python中一次打印每个循环的所有结果

  9. 9

    如何在Ubuntu中一次安装所有Perl模块

  10. 10

    如何在API蓝图中一次指定所有响应的Content-Type?

  11. 11

    如何在.NET中一次验证所有空文本

  12. 12

    第一次使布尔值变为真后,如何使布尔值保持真?(迅速)

  13. 13

    一次布尔值字典测试

  14. 14

    如何在Rails 6中一次运行所有测试,包括系统测试?

  15. 15

    如何从具有嵌套对象数组的多个文档中一次获取与mongodoDb查询匹配的所有值

  16. 16

    如何在emacs中一次性删除所有行?

  17. 17

    无法使用TextScan在Matlab中一次导入所有值

  18. 18

    如何在JAXB中一次将@XmlJavaTypeAdapter规则应用于特定类型的所有字段?

  19. 19

    Propel:如何在一个循环中一次从数据库中检索所有元素?

  20. 20

    如何在Grails中一次保存所有收藏

  21. 21

    如何在KeychainItemWrapper中保存布尔值

  22. 22

    如何在python中反转列表中的所有布尔值?

  23. 23

    如何在WinSCP中一次重新连接所有会话/选项卡?

  24. 24

    如何在表单中一次性获取所有输入值

  25. 25

    如何在localstorage中一次保存数组和对象?

  26. 26

    如何在 SQL Server 中一次选择具有相同发票编号的所有记录

  27. 27

    如何在 SQL Server SP 中一次重命名所有变量

  28. 28

    如何在循环中一次显示值

  29. 29

    如何在 react js 中一次更新嵌套对象中所有键的值?

热门标签

归档