gpt4 book ai didi

java - 通过自定义 ListView 从 Activity A 转到 Activity B

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

我已成功使用自定义 ListView 填充一个 Activity(我们将其称为 Activity A),该 View 运行良好。

当用户单击 Activity A 中项目列表中的项目时,我想将该项目的详细信息传递到 Activity B 中。

这就是我的 Activity A 的样子:

public class ChannelList extends Activity implements OnItemClickListener {

public static final String[] names = new String[] { "BBC One", "BBC Two" };
public static final String[] descs = new String[] { "London, SD", "England, SD"};
ListView listView;
List<ChannelItem> channelItems;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_channel_list);

channelItems = new ArrayList<ChannelItem>();
for (int i = 0; i < names.length; i++) {
ChannelItem item = new ChannelItem(names[i], descs[i]);
channelItems.add(item);
}

listView = (ListView) findViewById(R.id.listView1);
ChannelListViewAdapter adapter = new ChannelListViewAdapter(this, R.layout.item_channel_list, channelItems);
listView.setAdapter(adapter);
listView.setOnItemClickListener(this);

}


@Override
public void onItemClick(AdapterView<?> parent, View view, int position,long id) {
// Toast toast = Toast.makeText(getApplicationContext(), "Item " + (position + 1) + ": " + channelItems.get(position), Toast.LENGTH_SHORT);
// toast.setGravity(Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL, 0, 0);
// toast.show();
Intent intent = new Intent(this, ScheduleList.class);
startActivity(intent);
}


}

根据我对 Android API 文档的解释,我应该使用 Intent.putExtra(); 将数据传递到 Activity B 调用中

问题是,如何传递用户点击的列表项的名称和描述元素?

例如,当我调用 Activity B 时,如果从 ListView 中单击 BBC One,它应该能够下载 BBC One 的电视时间表数据。如何让 Activity B 知道哪个列表项点击触发了 Activity B?

最佳答案

怎么样

intent.putExtra("name", names[position]);

Activity A的onItemClick方法中和

String name = getIntent().getStringExtra("name");

Activity B的onCreate方法中?

关于java - 通过自定义 ListView 从 Activity A 转到 Activity B,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19757076/

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