gpt4 book ai didi

java - Android 应用程序-将对象作为额外 Intent 传递与使用公共(public)成员变量

转载 作者:行者123 更新时间:2023-12-01 11:38:23 26 4
gpt4 key购买 nike

我有一个 Android 应用程序,它的主要 Activity 是 ListView。单击其中一项时,将启动一个新 Activity ,并显示详细信息 View 。 ListView 有一个我定义的类的对象的 ArrayList。

目前,我将这些对象传递给详细 View Activity ,如下所示:

Intent intent=new Intent(MainActivity.this,DetailActivity.class);
intent.putExtra(TAG,myList.get(position));
startActivity(intent);

其中“myList”是MainActivity 的私有(private)成员变量。但是,详细 View 需要一些时间来加载,我想知道这是否是因为“myList”中的对象包含位图,这可能需要一些时间来读取。我不确定,延迟可能只是由于模拟器运行缓慢所致。

我认为公开 myList 会更快,然后像这样传递位置:

Intent intent=new Intent(MainActivity.this,DetailActivity.class);
intent.putExtra(TAG,position);
startActivity(intent);

然后像这样访问 DetailActivity 中的对象:

MyObject object=MainActivity.myList.get(getIntent().getIntExtra(TAG));

但是,我相信我已经读到,当 DetailActivity 启动时,我的 MainActivity 可能会被销毁,然后 MainActivity.myList 不会为 null 吗?

最佳答案

尝试在真实的手机上启动您的应用程序。我在模拟器上遇到了同样的问题,我认为这只是它的错误,因为在真实设备上我的代码运行得非常快并且没有延迟。 Intent 上的额外负载不会导致应用程序变慢。

关于java - Android 应用程序-将对象作为额外 Intent 传递与使用公共(public)成员变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29766528/

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