Android 整理 Intent 调用父级的 onCreate()
Posted
技术标签:
【中文标题】Android 整理 Intent 调用父级的 onCreate()【英文标题】:Android finishing Intent calls onCreate() of parent 【发布时间】:2021-09-08 18:39:33 【问题描述】:我遇到了由于 NullPointerException 而导致我的应用程序不断崩溃的问题。由于缺少值,无法进行数据库查询。
我已经调查过,发生了以下情况:
A 类由 MainActivity 设计(使用 IntentExtra int id
)。A
类在 B
上生成 Intent。
B
通过单击“后退”按钮完成(硬件后退按钮实际上有效。问题在于左上角的那个)。
A.onCreate()
再次被调用(但创建它的 Intent 与以前不同,因此没有 id Extra)。但我想回到A
之前的状态。我需要有一些变量的实例。
有什么解决方法吗?或者为什么会调用 onCreatebeeing?
【问题讨论】:
onCreate() of A 被调用,因为您使用 Intent 启动了活动 (A)。如果您希望每次程序启动活动 A 时都将变量设置为特定值,您可以简单地在 onCreate() 中设置该值。 好吧,也许我的描述不够清楚......在 MainActivity 中,用户单击列表视图中的字段。这会在 A 上创建一个 Intent,并为其提供用户单击的 Id。在 A 中还有一个元素列表视图。在这里,用户还单击了一个 (id2)。这意味着具有特定 id,id2 的 B 显示更多信息。当 B 被“back”关闭时,它应该在 A 处“备份”并使用给定的 Id,因此恢复状态 【参考方案1】:问题是: 活动的成员在停止时会被“擦除”。为了防止这种情况,您可以使用 SharedPreferences。Here 是一个很好的描述。 --> 保存持久化状态
【讨论】:
以上是关于Android 整理 Intent 调用父级的 onCreate()的主要内容,如果未能解决你的问题,请参考以下文章
Android高级ui13-nestedscrollview嵌套滚动机制
android -> 将 ImageView 的高度设置为父级的动态高度
在父级的 ngOnDestroy 之后未调用 Angular ngOnChanges