2013-04-04 101 views
0

我有这个应该从数据库检索数据的HTTP/JSON代码,但我该如何将它打印到屏幕上。如果您需要任何额外的代码,请告诉我。由于将JSON结果打印到屏幕

String result = ""; 
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1); 
nameValuePairs.add(new BasicNameValuePair("name","Badminton")); 

//http post 
try{ 
HttpClient httpclient = new DefaultHttpClient(); 
HttpPost httppost = new HttpPost("myurl.php"); 
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); 
HttpResponse response = httpclient.execute(httppost); 
HttpEntity entity = response.getEntity(); 
InputStream is = entity.getContent(); 
} 
catch(Exception e1){ 
Log.e("log_tag", "Error in http connection "+e1.toString()); 
} 

//convert response to string 
try{ 
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),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()); 
} 

//parse json data 
try{ 
JSONArray jArray = new JSONArray(result); 
for(int i=0;i<jArray.length();i++) 
{ 
JSONObject json_data = jArray.getJSONObject(i); 
Log.i("log_tag","type: "+json_data.getInt("id")); 
} 
} 

catch(Exception e) 
{ 
Log.e("log_tag", "Error parsing data "+e.toString()); 
} 

所以我怎么会去打印我从PHP文件到屏幕上接收到的数据,我会做更多的东西与它后来

+0

你想在屏幕上显示哪里? ListView,GridView,TextView或者其他? – 2013-04-05 05:16:39

+0

此刻的任何地方啊哈 – Ryaller 2013-04-12 12:42:45

回答

0

如果你只想赶快把它显示给用户可以使用Toast。更多关于祝酒词可以发现here

Toast toast = Toast.makeText(getApplicationContext(), text, Toast.LENGH_SHORT).show(); 

如果你想在一个特定的视图,例如,以显示它一个TextView屏幕上你需要找到该视图,并设置你想要显示的文字。

TextView v = (TextView) findViewById(R.id.where_im_displaying_text); 
v.setText(text); 

如果您正在尝试做其他事情,请告诉我们,以便我们提供帮助。

+0

嘿,欢呼的回复。哪个变量是存储的所有数据? – Ryaller 2013-04-04 16:08:21

+0

在烤面包中,您要显示的文字会显示“文字”的位置。 TextView相同。只要它是一个字符串,你可以放入任何你想要的变量。只需从JSON中提取所需的文本并插入即可。 – Rarw 2013-04-04 16:11:02

+0

我只是想知道在代码中调用的变量是什么,从PHP代码中的数据保存到...因为我已经改变了textview代码已经设置 – Ryaller 2013-04-04 16:17:00

1

如果你在JSON的,如果它足够小,你可以敬酒它一眼只是有兴趣..

Toast.makeText(context, text, Toast.LENGTH_LONG).show(); 

如果你想看到整个JSON,你可以把它变成一个TextView和使用JSON对象的toString方法来打印它。

+0

干杯,我只是想知道哪个变量存储了来自PHP文件的JSON数据,因为'change textview code'已经设置了 – Ryaller 2013-04-04 16:18:18

+0

输出存储在一个名为result的变量中。字符串结果=“”;。你发布的java代码段不是你的代码吗? – 2013-04-04 16:25:58

+0

我在跟着一个教程,但感到困惑。我认为这是通话结果,但不能确定,因为我无法想象如何使用它 – Ryaller 2013-04-04 16:47:58