java-捆绑包在传递给子活动时变为null

java-捆绑包在传递给子活动时变为null,第1张

概述我正在使用标准的AndroidIntent/Bundle方法将数据传递给子活动.问题是,尽管在活动开始之前Intent看起来不错,但在子活动中它显示为null.我找不到其他遇到此问题的人,所以我想问一下有关在哪里查找/如何调试的指针.(目标是Android2.1)家长活动摘要:@Overrideprotected

我正在使用标准的Android Intent / Bundle方法将数据传递给子活动.

问题是,尽管在活动开始之前Intent看起来不错,但在子活动中它显示为null.我找不到其他遇到此问题的人,所以我想问一下有关在哪里查找/如何调试的指针.

(目标是AndroID 2.1)

家长活动摘要:

@OverrIDe    protected voID onListItemClick(ListVIEw l, VIEw v, int position, long ID) {        super.onListItemClick(l, v, position, ID);        Intent i = new Intent(ctx, ArticleVIEw.class);        i.putExtra("url", articles.get(position).url.toString());        // The following line correctly logs the URL        Log.d(TAG,"Starting article vIEwer with url " + i.getStringExtra("url"));        startActivityForResult(i,ACTIVITY_ARTICLE);    }

儿童活动摘要:

@OverrIDeprotected voID onCreate(Bundle icicle) {    super.onCreate(icicle);    setContentVIEw(R.layout.article_vIEw);    if (icicle != null) {        // Never called!    } else {        // Always called        Log.d(TAG,"Icicle is null - no URL passed in");    }}

忽略icicle为null并尝试从中检索状态信息(使用getString)会导致挂起并:

03-14 22:23:03.529: WARN/ActivityManager(52): Activity HistoryRecord{44ddd238 com.t.s/.ArticlesList} being finished, but not in LRU List

任何提示,不胜感激.

解决方法:

不是将Intent传递给子活动(或任何活动)的构造函数.

意图可以通过获取

Intent intent = getIntent();

您所指的Bundle冰柱是Activity从暂停状态恢复时使用的Bundle.例如.如果您需要在重新启动活动之前保存活动的任何状态,则此位置是存储数据的地方.

总结

以上是内存溢出为你收集整理的java-捆绑包在传递给子活动时变为null全部内容,希望文章能够帮你解决java-捆绑包在传递给子活动时变为null所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1083684.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存