作者hth9494 (hth9494)
看板AndroidDev
标题[问题] 请问如何保持资料在Activity之间?
时间Mon May 14 22:37:50 2018
我有三个Activity A B C
导航顺序是从A -> B -> C
C可以透过返回箭头回到B
B也可以从返回箭头回到A
返回箭头指的是我在AndroidManifest.xml设定parentActivityName後
出现在App bar左方的箭头,不是手机上Home键旁边的
现在要从A传一个ID到B,然後再传到C
最後在C用该ID存取资料库
一开始正常导航用A -> B -> C没问题
但从C回到B(返回箭头)再进到C的话,ID就不见了
(也就是C -返回箭头-> B -> C会出问题)
不过如果是用Home键旁边的back键从C回到B,再进到C,就没事
(也就是C -back键-> B -> C没事,ID还在)
我试了一下是因为用返回箭头的话,B会重新从getIntent试图存取A传的ID
但是此时的B是从C来的,而不是从A,所以拿不到ID
想请问一下要怎麽让C -返回箭头-> B -> C这个过程保持ID存在?
谢谢
以下是code
ActivityA
https://pastebin.com/0PKwyYiP
ActivityB
https://pastebin.com/7K16W6ZZ
ActivityC
https://pastebin.com/JnUGU5uE
AndroidManifest.xml片段
https://pastebin.com/XvbhF9rS
* ActivityA和B都只有一个Button,C只有一个TextView,layout就不贴了
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.36.55.181
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1526308681.A.E06.html
1F:推 taco2548: intent.putExtra(ActivityB.THE_KEY, "ID need..."); 05/14 23:23
2F:→ taco2548: 照你的方式写,虽然我觉得很怪 05/14 23:24
3F:推 anandydy529: 去找ACache,直接把你的资料塞给他 05/14 23:34
4F:推 daniel098962: 用SharedPreferences呢? 他会存在你的app里 任何act 05/15 09:09
5F:→ daniel098962: ivity都可取用或复写 05/15 09:09
6F:→ wvwvwvwvwv: 写个CLASS 再用STATIC存变数呢? 05/15 18:03
8F:→ hth9494: 已解决 方法就是wv大说的 感谢 05/15 20:04