gpt4 book ai didi

java - onPause() 或 onSaveInstanceState() 哪个更适合我的需求?

转载 作者:行者123 更新时间:2023-11-30 11:53:07 24 4
gpt4 key购买 nike

我有一个包含三个页面的应用程序,其中一个是主页。如果用户转到两个子页面之一,用户可以输入我想保存的几个字段。我一直在研究 onPause() 和 onSaveInstanceState()。我想我只想对这两者有一个明确的解释,如果 onPause() 更好和代码示例。这就是我对 onSaveInstanceState() 的要求。

protected void onSaveInstanceState(Bundle outState) {
// Save away the original text, so we still have it if the activity
// needs to be killed while paused.

outState.putDouble("quizPts",qpts);
outState.putDouble("quizV",qvalue);
outState.putDouble("tPts",tpts);
outState.putDouble("tValue", tvalue);
outState.putDouble("hPts", hpts);

这就是我设置 bundle 的方式,给它一个 ID 和一个值。

public void onRestoreInstanceState(Bundle outState) {
super.onRestoreInstanceState(outState);
// Restore UI state from the savedInstanceState.
// This bundle has also been passed to onCreate.
qpts = outState.getDouble("quizPts");
qvalue = outState.getDouble("quizV");
tpts = outState.getDouble("tPts");
tvalue = outState.getDouble("tValue");
hpts = outState.getDouble("hPts");

这就是我计划恢复它的方式,问题是我不明白如何传递 Bundle 来恢复它。我正在将我需要返回的变量设置为设置到 UI 的变量。

任何建议都很好

感谢初学者

最佳答案

最好的选择是共享偏好。 onpause 旨在解决您因电话或其他原因暂停应用程序时的顾虑。但是,如果您使用共享首选项,它会为您提供保存数据的方法,并在保存的值不可用时使用默认值恢复数据。此数据将在用户 session 中持续存在(即使您的应用程序被终止)。但是,如果您打算保存原始数据类型(如 bool、int 等)以外的内容,这不是一个好的选择。

参见 http://developer.android.com/guide/topics/data/data-storage.html#pref

关于java - onPause() 或 onSaveInstanceState() 哪个更适合我的需求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6501083/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com