package test.test;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Vector;

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.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.ListActivity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;


public class test2 extends ListActivity {

  InputStream is;
  ArrayList<String> results = new ArrayList<String>();
  JSONObject json_data;

 
 @Override
  public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
 
  getData();
  }
 public void getData() {
  String result = "";
   ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
   try{
   HttpClient httpclient = new DefaultHttpClient();
   HttpPost httppost = new HttpPost("http://203.241.246.113/555.php");
   httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
   HttpResponse response = httpclient.execute(httppost);
   HttpEntity entity = response.getEntity();
   is = entity.getContent();
   }catch(Exception e){
   Log.e("log_tag", "Fehler bei der http Verbindung "+e.toString());
   }
   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());
     }
     try{
      JSONArray jArray = new JSONArray(result);
      for(int i=0;i<jArray.length();i++){
       json_data = jArray.getJSONObject(i);
       results.add((String) json_data.get("uid") + " , 상품명[ " + json_data.get("title") + "  ]" );

       final String[] results = new String[]{
       };

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


   this.setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, results));
   getListView().setOnItemClickListener(new AdapterView.OnItemClickListener() {

   @Override
   public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
    // TODO Auto-generated method stub
//    System.out.println(arg3);
    String[] StringArrayData = null;
    try {
     StringArrayData = StringArrayData(arg2);
    } catch (JSONException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }  
    Intent intent = new Intent (test2.this,test3.class);      
    Bundle myData = new Bundle();          
    myData.putStringArray("key",StringArrayData);    
    intent.putExtras(myData);       
    startActivity(intent);  
   }
   private String[] StringArrayData(int arg2) throws JSONException {
    // TODO Auto-generated method stub
    String result = results.get(arg2);
    
    String[] StringArrayData = new String[4];
    
    StringArrayData[0]=(String) json_data.get("uid");
    StringArrayData[1]=(String) json_data.get("title");
    StringArrayData[2]=(String) json_data.get("content");
    StringArrayData[3]=(String) json_data.get("link");
    return StringArrayData;
   }
   
   
  });
  
 }
}

 

안녕하세요... 공지를 읽어도 소스를 어떻게 쓸지몰라서 그냥 씁니다. 죄송합니다.

저 리스트뷰를 클릭할시에 디테일한 액티비티로 넘어가게되어

그 액티비티에서 클릭하였는 정보를 보여주는 프로그램을 만들려고 합니다.

현제 디테일한 화면으로넘어가서 json으로 파싱한 정보를 불러와지기는하는대

0번째 포지션값을 누르든 1번째 포지션값을 누르든 3번째 포지션 값을 누르든

디테일한 화면에는 마지막 포지션값에 해당하는 내용만 뿌려지내요;;;

제 생각으로는

String[] StringArrayData = null;
이게 잘못된것같은대 어떻게.... 뭐가 잘못인지 확실히 모르겟어요 어떻게 바꾸면 될까요 조언쫌부탁드릴깨요.