Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 108,357

HOME > Mobile > Mobile Forum > [Android] ListView มีปัญหาค่ะ เข้าหน้าที่แสดง Listview ไม่ได้เลย ไม่รู้ว่าผิดตรงไหน ช่วยดูด้วยนะคะ



 

[Android] ListView มีปัญหาค่ะ เข้าหน้าที่แสดง Listview ไม่ได้เลย ไม่รู้ว่าผิดตรงไหน ช่วยดูด้วยนะคะ

 



Topic : 087056



โพสกระทู้ ( 25 )
บทความ ( 0 )



สถานะออฟไลน์




Code (Java)
package com.BT.buytrash;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.TextView;

public class price extends Activity{

	private EditText search;
	private ImageButton type_iron;
	private ImageButton type_plastic;
	private ImageButton type_paper;
	private ImageButton type_kew;
	private ImageButton type_loha;
	private ImageButton type_fifa;
	private ImageButton type_other;
	private ListView listview_product;
	private TextView test;
	//private String[][]	data_listview;
	private ArrayList<String>  data_listview;
	 
	
	String url = "http://10.0.2.2/BuyTrash/price_product.php";
	List<NameValuePair> params = new ArrayList<NameValuePair>(); 

	
	//----------------------------------------------------------------
	
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.price);
		
		search = (EditText) findViewById(R.id.EditText_search);
		type_iron = (ImageButton) findViewById(R.id.Button_type_iron);
		type_plastic = (ImageButton) findViewById(R.id.Button_type_plastic);
		type_paper = (ImageButton) findViewById(R.id.Button_type_paper);
		type_kew = (ImageButton) findViewById(R.id.Button_type_kew);
		type_loha = (ImageButton) findViewById(R.id.Button_type_loha);
		type_fifa = (ImageButton) findViewById(R.id.Button_type_fifa);
		type_other = (ImageButton) findViewById(R.id.Button_type_other);
		listview_product = (ListView) findViewById(R.id.listview_price);
		
		params.add(new BasicNameValuePair("keyword", search.getText().toString()));
		
		test = (TextView) findViewById(R.id.textViewtest);
		
		
		ArrayList<HashMap<String, String>> re = new ArrayList<HashMap<String, String>>();   ;
	
		re = getHttpPost(url,params);
		
		String a = "id = " + re.get(0).get("p_id").toString() +
				"p_name = " + re.get(0).get("p_name").toString() +
		"p_type = " + re.get(0).get("p_type").toString() + 
		"p_price1 =" + re.get(0).get("p_price1").toString() + 
		"p_price2 = " + re.get(0).get("p_price2").toString() + 
		"p_price3 = " + re.get(0).get("p_price3").toString() +
		 "p_sale = " + re.get(0).get("p_sale").toString()+"size = "+re.size(); 
		test.setText(a);
//------------------------------------------------------------

		 // Adapter
	 		listview_product.setAdapter(new MyAdapters());
	 		
	 		data_listview = new ArrayList<String>();
			data_listview.add("ราคาซื้อและราคาขายสินค้า");  	// 0
			data_listview.add("ซื้อสินค้า");				// 1
	        data_listview.add("ข้อมูลลูกค้า");		
	/* 		
	 		data_listview = new String[re.size()][7];
			
		for(int i=0 ; i< re.size() ; i++){			
			data_listview[i][0] = re.get(i).get("p_id").toString(); 
			data_listview[i][1] = re.get(i).get("p_name").toString(); 
			data_listview[i][2] = re.get(i).get("p_type").toString(); 
			data_listview[i][3] = re.get(i).get("p_price1").toString(); 
			data_listview[i][4] = re.get(i).get("p_price2").toString(); 
			data_listview[i][5] = re.get(i).get("p_price3").toString(); 
			data_listview[i][6] = re.get(i).get("p_sale").toString();			
		}
		*/
		
	}
	//-------------------------------------------------------------------------------------
	
	private class MyAdapters extends BaseAdapter{
		
		private Holder holder;
		
		public int getCount() {
			
			return data_listview.size();
		}

		public Object getItem(int position) {

			return null;
		}

		public long getItemId(int position) {

			return 0;
		}

		public View getView(int position, View view, ViewGroup parent) {
			if( view == null){
				view = LayoutInflater.from(getApplicationContext()).inflate(R.layout.list_price_item, null);
				holder = new Holder();
				holder.p_name = (TextView) view.findViewById(R.id.product_name);
				holder.p_price1 = (TextView) view.findViewById(R.id.price1);
				holder.p_price2 = (TextView) view.findViewById(R.id.price2);
				holder.p_price3 = (TextView) view.findViewById(R.id.price3);
				holder.p_sale = (TextView) view.findViewById(R.id.price_sale);
				view.setTag(holder);
				
			}else{
				holder = (Holder) view.getTag();
			}
			
			
			holder.p_name.setText(data_listview.get(position));
			holder.p_price1.setText(data_listview.get(position));
			holder.p_price2.setText(data_listview.get(position));
			holder.p_price3.setText(data_listview.get(position));
			holder.p_sale.setText(data_listview.get(position));
			
			return view;
		}
		private class Holder{   //จะบอกว่า view แต่ละรายการมีอะไรบ้าง
			public TextView p_name;
			public TextView p_price1;
			public TextView p_price2;
			public TextView p_price3;
			public TextView p_sale;
			
		}
		
	}
	   
	  //----------------------------------------------------------------------------------------
	    
	  	public ArrayList<HashMap<String, String>> getHttpPost(String url, List<NameValuePair> params) {
//	public ArrayList<String> getHttpPost(String url, List<NameValuePair> params) {
	  		
	  		ArrayList<HashMap<String, String>> myArrList = new ArrayList<HashMap<String, String>>(); 
	  		  //String[][] re ;
	  		  InputStream is = null;
	  		  String result = "";
	  		  ArrayList<String> name  = new ArrayList<String>(); 
	  		 // -------------------------------connect----------------------------------------------------
	 		 try {  
	 			      
	 			 HttpClient client = new DefaultHttpClient();       
	 			 HttpPost httpPost = new HttpPost(url); 
	 		
	 // -------------------------------set  UTF8 --------------------------------------------------
	 		
	 			 httpPost.setEntity(new UrlEncodedFormEntity(params,"UTF-8"));
	 			 HttpResponse response = client.execute(httpPost);
	 			 HttpEntity entity = response.getEntity();
	 			 is = entity.getContent();
	 			 
	 		  }catch (Exception e) {
	 			  Log.e("log_tag", "Error in http connection " + e.toString());
	 		  }

	 // -------------------------------to String --------------------------------------------------
	 		 
	 		 try {
	 			   BufferedReader reader   	=  	new BufferedReader(new InputStreamReader(is, "iso-8859-11"), 8);
	 			   StringBuilder  sb 		= 	new StringBuilder();	
	 			   String 		  line 		= 	null;
	 			   while ((line = reader.readLine()) != null) {
	 			    sb.append(line + "\n");   
	 			   }
	 			   is.close();
	 			   result = sb.toString();
	 			  
	 		 } catch (Exception e) {
	 			   Log.e("log_tag", "Error converting result " + e.toString());
	 		 }
	 		 
	 // -------------------------------JSON to JAVA --------------------------------------------------
			   
			 
	 		 try {
	 			   JSONArray jArray = new JSONArray(result);
	 			   //re = new String[jArray.length()][7]; 
	 			  
	 			  
	 			  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); 
						
	 				  

	 			 }
	 			   
	 		  } catch (JSONException e) {
	 			   Log.e("log_tag", "Error parsing data " + e.toString());
	 		  }
	 		
	 		  return myArrList;
	 		// return name;
	 	}
	  	
	    @Override
	    public boolean onCreateOptionsMenu(Menu menu) {
	        getMenuInflater().inflate(R.menu.login, menu);
	        return true;
	    }
	
	  	
}





Tag : Mobile, Android, JAVA







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-11-21 21:47:29 By : amiamika View : 968 Reply : 6
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

แสดง Error หรือว่ายังไงครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-22 06:24:28 By : mr.win
 


 

No. 2



โพสกระทู้ ( 25 )
บทความ ( 0 )



สถานะออฟไลน์


หน้าโค้ดไม่แจ้งเออเร่อค่ะ แต่ว่าเคยลองเอาส่วนของการเรียกใช้Listview พวก setAdapter ออก แล้วมันไม่เออเร่อค่ะ ใช้งานได้ แต่ว่าพอจะแสดงข้อมูลเป็น Listview มันเออเร่อค่ะ รบกวนช่วยดูด้วยนะคะ

Code
11-23 10:15:23.284: E/AndroidRuntime(281): FATAL EXCEPTION: main
11-23 10:15:23.284: E/AndroidRuntime(281): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.BT.buytrash/com.BT.buytrash.price}: java.lang.NullPointerException
11-23 10:15:23.284: E/AndroidRuntime(281): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.os.Handler.dispatchMessage(Handler.java:99)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.os.Looper.loop(Looper.java:123)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.app.ActivityThread.main(ActivityThread.java:4627)
11-23 10:15:23.284: E/AndroidRuntime(281): at java.lang.reflect.Method.invokeNative(Native Method)
11-23 10:15:23.284: E/AndroidRuntime(281): at java.lang.reflect.Method.invoke(Method.java:521)
11-23 10:15:23.284: E/AndroidRuntime(281): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
11-23 10:15:23.284: E/AndroidRuntime(281): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
11-23 10:15:23.284: E/AndroidRuntime(281): at dalvik.system.NativeStart.main(Native Method)
11-23 10:15:23.284: E/AndroidRuntime(281): Caused by: java.lang.NullPointerException
11-23 10:15:23.284: E/AndroidRuntime(281): at com.BT.buytrash.price$MyAdapters.getCount(price.java:122)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.widget.ListView.setAdapter(ListView.java:436)
11-23 10:15:23.284: E/AndroidRuntime(281): at com.BT.buytrash.price.onCreate(price.java:93)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
11-23 10:15:23.284: E/AndroidRuntime(281): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
11-23 10:15:23.284: E/AndroidRuntime(281): ... 11 more
11-23 10:15:26.844: I/Process(281): Sending signal. PID: 281 SIG: 9

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-23 10:16:36 By : amiamika
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code
ComponentInfo{com.BT.buytrash/com.BT.buytrash.price}: java.lang.NullPointerException
11-23 10:15:23.284: E/AndroidRuntime(281): at


มันมีค่าว่างในตัวแปรน่ะครับ ส่วนตรงไหนคุณอาจจะต้องใช้การ Debug ดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-23 10:18:29 By : mr.win
 


 

No. 4



โพสกระทู้ ( 25 )
บทความ ( 0 )



สถานะออฟไลน์


แล้วการใช้ debug ดูนี่ทำยังไงคะ เพิ่งศึกษาค่ะ ไม่ค่อยเข้าใจเลยค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-23 12:49:39 By : amiamika
 


 

No. 5



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองอ่านนี่ครับ

Go to : การใช้งาน Debugging ในการเขียน Android บนโปรแกรม Eclipse IDE (Android-Eclipse)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-23 13:15:53 By : mr.win
 


 

No. 6



โพสกระทู้ ( 25 )
บทความ ( 0 )



สถานะออฟไลน์


อ๋อ ได้แล้วค่ะ ขอบคุณมากนะคะ ^^
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-11-23 14:38:46 By : amiamika
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : [Android] ListView มีปัญหาค่ะ เข้าหน้าที่แสดง Listview ไม่ได้เลย ไม่รู้ว่าผิดตรงไหน ช่วยดูด้วยนะคะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม , รับทำบัญชี , โรงงานผลิตครีม , สำนักงานบัญชี , รับจดทะเบียนบริษัท , Pangpond , รถมือสอง

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2020 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่