|
|
|
[Android] แสดงรายการใน Listview โดยเอาจาก json มาค่ะ แต่ว่าแสดงข้อมูลไม่หมดค่ะ เป็นเพราะอะไรคะ |
|
|
|
|
|
|
|
คือว่าทำการค้นหา และลองรันโค้ด json ดู มันมีข้อมูลอยู่ครบค่ะ สมมุติมีอยู่ 20 แถวค่ะ แต่ว่าพอเอามาแสดงใน android มันแสดงแค่ 11 แถว แบบนี้น่ะค่ะ จะเป็นเพราะอะไรคะ
Code (Java) ในส่วนของติดต่อฐานข้อมูลและนำข้อมูลมาใส่ ตัวแปร
try {
JSONArray jArray = new JSONArray(result);
HashMap<String, String> map;
for (int i = 0; i < jArray.length(); i++) {
JSONObject json_data = jArray.getJSONObject(i);
map = new HashMap<String, String>();
map.put("p_id",json_data.getString("p_id") );
map.put("p_name", json_data.getString("p_name") );
map.put("p_type", json_data.getString("p_type") );
map.put("p_price1", json_data.getString("p_price1") );
map.put("p_price2", json_data.getString("p_price2") );
map.put("p_price3", json_data.getString("p_price3") );
map.put("p_sale", json_data.getString("p_sale") );
myArrList.add(map);
}
Code (Java) ในส่วนของนำข้อมูลมาแสดง ใน Listview
ArrayList<HashMap<String, String>> re = new ArrayList<HashMap<String, String>>();
final AlertDialog.Builder viewDetail = new AlertDialog.Builder(this);
listview_product = (ListView) findViewById(R.id.listview_price);
re = getHttpPost(url,params);
listview_product.setAdapter(new MyAdapters());
data_listview_id.clear();
data_listview_name.clear();
data_listview_type.clear();
data_listview_price1.clear();
data_listview_price2.clear();
data_listview_price3.clear();
data_listview_sale.clear();
for(int i=0 ; i< re.size() ; i++)
{
data_listview_id.add(re.get(i).get("p_id").toString());
data_listview_name.add(re.get(i).get("p_name").toString());
data_listview_type.add(re.get(i).get("p_type").toString());
data_listview_price1.add(re.get(i).get("p_price1").toString());
data_listview_price2.add(re.get(i).get("p_price2").toString());
data_listview_price3.add(re.get(i).get("p_price3").toString());
data_listview_sale.add(re.get(i).get("p_sale").toString());
}
listview_product.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> adapter, View view, int position,long id)
{
viewDetail.setTitle(data_listview_name.get(position));
viewDetail.setMessage( " ปกติ : "+data_listview_price1.get(position)+
"\n ประจำ : "+data_listview_price2.get(position)+
"\n พิเศษ : "+data_listview_price3.get(position)+
"\n ขาย : "+data_listview_sale.get(position));
viewDetail.setPositiveButton("OK", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{ dialog.dismiss(); }
});
viewDetail.show();
}
});
Tag : Mobile, Android, JAVA
|
|
|
|
|
|
Date :
2012-11-26 12:10:12 |
By :
amiamika |
View :
1238 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าคุณถามมาแบบนี้ ส่วนมากผมจะตอบ ให้ไปใช้การ Debug ดูค่าครับ ว่าตอนที่มันส่งมานั้น มันได้กี่ Record ครับ ลอง Debug ไล่ดูค่าใน Loop ก็ได้ครับ
|
|
|
|
|
Date :
2012-11-26 13:49:48 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|