发布于2024-11-10 22:27 阅读(459) 评论(0) 点赞(25) 收藏(5)
我正在尝试创建一个非常基本的 ListView 对话框,其中每个项目都有一个子标题。为此,我尝试使用 simple_list_item_2 布局和一个 List(Map(String,String) 适配器。代码如下:
public static class StoreList extends DialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final List<Map<String, String>> data = new ArrayList<Map<String, String>>();
// Dummy data
Map<String, String> datum = new HashMap<String, String>();
datum.put("name", "Name1");
datum.put("address", "USA");
data.add(datum);
Map<String, String> datum2 = new HashMap<String, String>();
datum.put("name", "Name2");
datum.put("address", "CAN");
data.add(datum2);
// Adapter for the ListView:
SimpleAdapter adapter = new SimpleAdapter(
getActivity(),
data,
android.R.layout.simple_list_item_2,
new String[] {"name", "address"},
new int[] {android.R.id.text1, android.R.id.text2});
// Listener for the ListView:
DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Intent i = new Intent(getActivity(), StoreActivity.class);
Map<String, String> listItem = data.get(which);
i.putExtra("name", listItem.get("name"));
i.putExtra("address", listItem.get("address"));
startActivity(i);
}
};
// Build the ListView dialog:
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.storeListTitle);
builder.setAdapter(adapter, listener);
return builder.create();
}
}
执行后结果如下:
http://i.imgur.com/8gkTECe.png
如您所见,四个文本字符串中只有一个被显示出来。这是怎么回事呢?
您正在基准而不是基准2上设置值。
// Dummy data
Map<String, String> datum = new HashMap<String, String>();
datum.put("name", "Name1");
datum.put("address", "USA");
data.add(datum);
Map<String, String> datum2 = new HashMap<String, String>();
datum.put("name", "Name2"); //should be datum2
datum.put("address", "CAN"); //should be datum2
data.add(datum2);
作者:黑洞官方问答小能手
链接:http://www.javaheidong.com/blog/article/693741/a6ca016307a7a71e075f/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!