Android 无法从自定义Listview向详细信息活动显示/发送数据和图像

Android 无法从自定义Listview向详细信息活动显示/发送数据和图像,android,listview,detailsview,Android,Listview,Detailsview,我是android开发者的新手,我的自定义Listview有问题,条件是当我点击我的Listview时,它应该是转到详细活动。是的,它是有效的! 但是细节数据和图像不会出现。仅detail.xml,不包含数据和图像 java DetailActivity.java LazyAdapter.java 这是我的自定义列表视图 这是详细信息xml,当我在自定义listview中单击其中一个列表时,结果为空,没有数据和图像 我不知道代码出了什么问题,因为当我运行程序时,它没有强制关闭。我认为问题出在in

我是android开发者的新手,我的自定义Listview有问题,条件是当我点击我的Listview时,它应该是转到详细活动。是的,它是有效的! 但是细节数据和图像不会出现。仅detail.xml,不包含数据和图像

java

DetailActivity.java

LazyAdapter.java

这是我的自定义列表视图

这是详细信息xml,当我在自定义listview中单击其中一个列表时,结果为空,没有数据和图像


我不知道代码出了什么问题,因为当我运行程序时,它没有强制关闭。

我认为问题出在inx.putExtrakodebrgs,map2.getin_kodebrg; 你应该使用不变的钥匙

Intent i = new Intent(<currentActivity>.this,
                    <newactivity>.class);
            i.putExtra("ticket", ticket);
            i.putExtra("ticketid", tid);                                
            startActivity(i);

您还可以使用不同的键发送每个字符串,并在键的帮助下在详细信息页面中获取它们。

首先,您需要调试detailActivity,以确定getIntent是否已获得所需的数据,如果已获得,则使用视图包含这些数据,如果没有,你需要考虑一下监听器是否正常

谢谢你的回答,我已经尝试了你的代码,但它不起作用,我的应用程序也被迫关闭。这是logcat:06-05 13:24:54.425:E/AndroidRuntime600:致命异常:AsyncTask 3您能够在详细活动中记录所有值吗?kiturk3是的,我认为日志中没有任何错误。因此,如果您在详细活动中记录日志,那么适配器和onclicklistener没有任何问题。。。。只是从一个活动向另一个活动发送和接收数据时出错。正确!在我的详细活动中,我使用字符串kode1s=ins.getStringExtrain\u kodebrg;String link_url=http://myphp文件+kode1s;从customlistview和json=jParser.AmbilJsonlink_url获取字符串;展示
private class GetData extends AsyncTask<String, Void, String> {

    JSONArray artikel = null;
    JSONObject json = null;
    JSONParser jParser = new JSONParser();

    Intent ins = getIntent();
    String kode1s = ins.getStringExtra(in_kodebrg);
    String link_url = "http:// my php file that call all data using primary id from table in my database mySQL"+kode1s;

    ProgressDialog dialog = new ProgressDialog(DetailActivity.this);

     protected void onPreExecute() { 
         super.onPreExecute();
         this.dialog.setMessage("Memuat Detail Produk..");
         this.dialog.show();
     }
    protected String doInBackground(String... params) {

        json = jParser.AmbilJson(link_url);         
        return null;
    }

 protected void onPostExecute(String result) { 
     dialog.dismiss();  
        try {
            artikel = json.getJSONArray("artikel");

            for(int i = 0; i < artikel.length(); i++){
                JSONObject ar = artikel.getJSONObject(i);

                TextView judul1 = (TextView) findViewById(R.id.judul2);
                TextView detail1 = (TextView) findViewById(R.id.detail2);
                TextView isi1 = (TextView) findViewById(R.id.isi2);
                TextView info1 = (TextView) findViewById(R.id.infobarang2);
                TextView kodebarang1 = (TextView) findViewById(R.id.kodenyabrg2);

                String judul_1 = ar.getString("nama");
                String detail_1 = "harga Rp. "+ ar.getString("harga");
                String isi_1 = "Stok Barang : "+ ar.getString("stok")+" "+ar.getString("satauan");
                String info_1 = "Info : "+ar.getString("info");
                String kodebarang_1 = "Kode Barang : "+ar.getString(in_kodebrg);

                judul1.setText(judul_1);
                detail1.setText(detail_1);
                isi1.setText(isi_1);
                info1.setText(info_1);
                kodebarang1.setText(kodebarang_1);

            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
 }
}
public class LazyAdapter extends BaseAdapter {

    private Activity activity;
    private ArrayList<HashMap<String, String>> data;
    private static LayoutInflater inflater=null;
    public ImageLoader imageLoader; 

    public LazyAdapter(Activity a, ArrayList<HashMap<String, String>> d) {
        activity = a;
        data=d;
        inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        imageLoader=new ImageLoader(activity.getApplicationContext());
    }

    public int getCount() {
        return data.size();
    }

    public Object getItem(int position) { 
        return data.get(position); 
        }

    public long getItemId(int position) {
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        View vi=convertView;
        if(convertView==null)

            vi = inflater.inflate(R.layout.listimage_item, null);

            TextView nama = (TextView)vi.findViewById(R.id.namas);
            TextView stok = (TextView)vi.findViewById(R.id.stoks);
            TextView kodebrg = (TextView)vi.findViewById(R.id.kodebrgs);  
            TextView harga = (TextView)vi.findViewById(R.id.hargas);
            TextView info = (TextView)vi.findViewById(R.id.infos);
            ImageView gambar=(ImageView)vi.findViewById(R.id.gambars);

            HashMap<String, String> berita = new HashMap<String, String>();
            berita = data.get(position);

            nama.setText(berita.get(YmainActivity.in_nama));
            stok.setText(berita.get(YmainActivity.in_stok));
            kodebrg.setText(berita.get(YmainActivity.in_kodebrg));
            harga.setText(berita.get(YmainActivity.in_harga));
            info.setText(berita.get(YmainActivity.in_info));
            imageLoader.DisplayImage(berita.get(YmainActivity.in_gambar), gambar);
            return vi;
    }
}
Intent i = new Intent(<currentActivity>.this,
                    <newactivity>.class);
            i.putExtra("ticket", ticket);
            i.putExtra("ticketid", tid);                                
            startActivity(i);
String ticketid = getIntent().getStringExtra("ticketid").toString();
String ticket = getIntent().getStringExtra("ticket").toString();