Java 如何从Arraylist填充AlertDialog?
如何从Arraylist填充AlertDialog。 我的Arraylist如下所示:Java 如何从Arraylist填充AlertDialog?,java,android,Java,Android,如何从Arraylist填充AlertDialog。 我的Arraylist如下所示: { Brand=Weber, Category=Urethane, Code=Wpu-01, Description=Black, Quantity=5; Brand=Weber, Category=Urethane, Code=Wpu-02, Description=White, Quantity=10} 我想在alertdialog中显示如下内容 产品详情 Weber
{ Brand=Weber,
Category=Urethane,
Code=Wpu-01,
Description=Black,
Quantity=5;
Brand=Weber,
Category=Urethane,
Code=Wpu-02,
Description=White,
Quantity=10}
我想在alertdialog中显示如下内容
产品详情
Weber Urethane Wpu-01 Black 5
Weber Urethane Wpu-02 White 10
然后是一个按钮(“关闭”)
请帮帮我。提前谢谢
这就是代码
public void updateJSONdata() {
orderlist = new ArrayList<HashMap<String, String>>();
JSONObject json = jParser.getJSONFromUrl(PRODUCTLIST_URL);
try {
order = json.getJSONArray(GET_PRODUCT);
for (int i = 0; i < order.length(); i++) {
JSONObject c = order.getJSONObject(i);
String id = c.getString(GET_ID);
String brand = c.getString(GET_BRAND);
String category = c.getString(GET_CATEGORY);
String description = c.getString(GET_DESCRIPTION);
String code = c.getString(GET_CODE);
String quantity = c.getString(GET_QUANTITY);
String unit = c.getString(GET_UNIT);
String unitprice = c.getString(GET_UNITPRICE);
HashMap<String, String> map = new HashMap<String, String>();
map.put(GET_ID,id);
map.put(GET_BRAND, brand);
map.put(GET_CATEGORY, category);
map.put(GET_DESCRIPTION, description);
map.put(GET_CODE, code);
map.put(GET_QUANTITY, quantity);
map.put(GET_UNIT, unit);
map.put(GET_UNITPRICE, unitprice);
orderlist.add(map);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
public void updateJSONdata(){
orderlist=新的ArrayList();
JSONObject json=jParser.getJSONFromUrl(PRODUCTLIST\uURL);
试一试{
order=json.getJSONArray(GET_PRODUCT);
对于(int i=0;i
StringBuilder sb=新的StringBuilder();
for(HashMap产品:订单列表){
对于(Map.Entry:product.entrySet()){
sb.append(entry.getValue()).append(“”);
}
}
字符串msg=sb.toString();
AlertDialog.Builder=新建AlertDialog.Builder(MainActivity.this);
builder.setTitle(“产品详细信息”)
.setMessage(msg)
.setCancelable(错误)
.setPositiveButton(“关闭”,新的DialogInterface.OnClickListener(){
@凌驾
公共void onClick(DialogInterface,inti){
dialogInterface.dismise();
}
}).create().show();
要使用HashMap
遍历数组列表
,并在警报对话框
上显示数据,请尝试以下操作:
ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String, String>>();
StringBuilder sb = new StringBuilder();
for (HashMap map : list) {
Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
sb.append(((Map.Entry) it.next()).getValue()).append(" ");
}
sb.append("\n"); // Use this if you want a line break.
}
String msg = sb.toString();
new AlertDialog.Builder(this)
.setTitle("Product details")
.setCancelable(false)
.setMessage(msg)
.setPositiveButton("CLOSE", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
// Do something.
dialogInterface.dismiss();
}
}).show();
我已经使用了for循环,但我无法获得任何数据点I;对于(i=0;i
ArrayList<HashMap<String,String>> list = new ArrayList<HashMap<String, String>>();
StringBuilder sb = new StringBuilder();
for (HashMap map : list) {
Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
sb.append(((Map.Entry) it.next()).getValue()).append(" ");
}
sb.append("\n"); // Use this if you want a line break.
}
String msg = sb.toString();
new AlertDialog.Builder(this)
.setTitle("Product details")
.setCancelable(false)
.setMessage(msg)
.setPositiveButton("CLOSE", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
// Do something.
dialogInterface.dismiss();
}
}).show();
sb.append("\n"); // Use this if you want a line break.