问题标签 [android-savedstate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2001 浏览

android - 如何使用导航抽屉和片段保存状态

我有一个带有导航抽屉、一个活动和许多片段的应用程序。当我更改设备方向时,我的主要活动是重新创建,并且出现的是我的主要片段,而不是当前片段。就像我启动应用程序时一样。

如何恢复当前片段以及与所选片段关联的数据?

我看过这篇文章,但它不起作用:使用导航抽屉保存片段状态

提前感谢那些可以帮助我的人。

0 投票
1 回答
51 浏览

android - 使用 CardView 在 ReclyclerView 上恢复临时数据(Textviews)(由于活动变化导致数据丢失)

我的布局有一个带有 3 个片段的 ViewPager。在片段中,我从一些 arrayList 和 Maps 中填充了一个 recyclerView。输出使用带有多个按钮的 CardView,以及带有动态数据的 TextViews(按钮更改 TextView 值)。

一切都很好,但现在我正在实施一个偏好活动。当我启动此活动然后返回到我的 MainActivity 时,所有数据更改都将丢失。一切都显示其默认值。

我该如何处理或防止这种数据丢失?

谢谢!

编辑:我想出了一个解决方案,至少就我的目的而言,它是完全有效的。阅读这个主题(我在我的 PreferenceActivity 上实现了它)..

0 投票
1 回答
505 浏览

android - Android - 在片段中保存 Viewpager 的状态

我有一个容器片段Acadmey,其中包含一个并由viewpager不同viewpagerchild fragments. 在 View pager 的子片段中,我调用 json 请求来获取要填充的数据。第一次一切正常,但是当我返回main activity并再次返回查看寻呼机时,所有内容child fragment都被清除了,并且onActivityCreated仅第一次调用,因此我的查看寻呼机页面每秒或 n 次都是空白的打开。我如何保存子片段的内容以供重用,或者是他们的任何方法,callbacked每次当 viewpager 的每个子片段重新打开时都会使用。

我的容器片段:-

我的 Viewpager 子片段(课程)

*我的 ViewPager 适配器 *

0 投票
1 回答
69 浏览

android - 如何在配置更改时保存和恢复 NetworkImageView 和 Textview

我正在使用 volley 从 Web 获取数据并在 TextViews 和 NetworkImageView 中显示结果。

我已成功保存和恢复文本视图的状态,但遇到了 NetworkImageView 的问题。

水果详情

虽然我根本无法恢复 NetworkImageView 的内容,但fruitContent它有一个异常:当我旋转屏幕时,文本的样式(例如粗体)丢失了,即它恢复了正常。

编辑 我发现样式丢失的原因是因为我将它设置为字符串;无论如何我可以使用 Parcelables 吗?

0 投票
1 回答
695 浏览

android - savedInstanceState 包包含未知键

在屏幕旋转时,我想恢复数据。所以我使用 onSaveInstanceState 方法来实现这一点。每当我在 onCreate 中恢复包并在 Logcat 中打印它时。我得到了额外的这两个字符串作为键:

在 onCreate 中:

savedInstanceState 中的另外两个键是:

0 投票
2 回答
689 浏览

android - 旋转后在viewpager中保留片段

编辑:我很难解释这些事情,所以这是一个视频 http://sendvid.com/mefqxd8f

上下文: 该应用程序由一个带有 ViewPager 的 Activity 组成,该 ViewPager 包含 3 个选项卡。Tab1 使用一个名为 PageFragmentListener 的接口在按下按钮时在同一个 Tab 中的 2 个不同片段之间进行切换。当应用程序首次加载时,Fragment1 在 Tab1 中膨胀。点击按钮后,Fragment2 在 Tab1 中被充气。我希望 Fragment1 在此之后永久保留在 Tab1 中。

问题: 如果 Tab3 当前处于活动状态(对用户可见),然后设备旋转 Tab1 被完全破坏。重新创建时,它会使用 Fragment1 膨胀 Tab1,而不是恢复 Fragment2。在视频中,您会看到 Tab1 是蓝色而不是紫色。

问题: 有没有办法在 Fragment2 被销毁后将其恢复到 Tab1 而不是膨胀 Fragment1?我假设savedInstanceState可以以某种方式使用。

0 投票
3 回答
5481 浏览

android - Android Fatal Error - Can not perform this action after onSaveInstanceState

I'm attempting to perform a fragment transaction after requesting permissions in Android - however the app continually crashes. How might this code be changed in order to avoid this?

Any assistance is appreciated.

CHECK PERMISSIONS BEFORE SENDING EMAIL:

CHECK PERMISSIONS:

PERMISSION CHECK RESULT:

INITIATE FRAGMENT TRANSACTION IF PERMISSION GRANTED:

LOGCAT:

0 投票
2 回答
76 浏览

android - 保存 GPS 实例状态和启用按钮

我的问题是,当我旋转 GPS 时,我无法停止LocationServices.FusedLocationApi. 这仅在我旋转屏幕后发生。如果我不改变方向,启动和停止工作正常。

这应该控制它是否应该更新

这是我要保存的值

开始和停止位置更新

onCreate 用按钮控制开始和停止

0 投票
2 回答
579 浏览

android - 来自 savedInstanceState 的数据在 Android 中始终为空

我正在开发一个 Android 应用程序。我在活动中使用 onSaveInstanceState 事件进行测试。但它没有像我预期的那样工作,因为当我在 onCreate 事件中检索它时,值字符串总是空的。

这是我的活动

当我运行活动并改变方向时,它总是在烤空消息。当我测试取消注释 Log 行时,它给了我错误,因为数据字符串为空或 null。为什么它不工作?如何正确保存和检索?

0 投票
1 回答
312 浏览

java - 在布局/活动更改后保留上传的图像

在 java 和 android 编程方面,我仍然是一个菜鸟,我相信我在过去几周已经取得了很大进展,但现在我有点卡住了,我非常感谢你的帮助。

我正在尝试开发一个可以创建用户配置文件布局的应用程序。到目前为止,我已经准备好了,从 Web 服务中提取用户数据。但现在我必须为用户添加一种从画廊或相机上传照片的方法。到目前为止,我已经通过下一个代码实现了这一点:

这确实适用于从厨房绘制图像并在屏幕上显示路径文件(嗯,这不会成为我的最终版本)但是,当我进入另一个布局/活动时,加载的图像会消失,我必须上传再说一遍。我正在尝试下一个保存方法:

但是,这仅适用于屏幕方向更改,不适用于布局/活动更改。即使活动发生变化,有没有办法让上传的图像保持不变?我的服务器在内存方面非常小,因此上传到它不是一个好选择,我必须将其保留在本地。请帮忙 :(