使用JSON显示ImageView,不返回任何值


Display ImageView with JSON, returns no value

我的问题是下一个。。。

我试图显示一个图像,它在我的phpmyadmin中定义,并托管在相应的文件夹中,但位图工厂没有返回任何内容。

我的JAVA:

if (success == 1) {
                            // successfully received product details
                            JSONArray productObj = json.getJSONArray(TAG_PRODUCT); // JSON Array
                        // get first product object from JSON Array
                        JSONObject product = productObj.getJSONObject(0);

                        // product with this pid found
                        // Edit Text
                        txtName = (EditText) findViewById(R.id.inputName);
                        txtPrice = (EditText) findViewById(R.id.inputPrice);
                        txtDesc = (EditText) findViewById(R.id.inputDesc);

                        // display product data in EditText
                        txtName.setText(product.getString(TAG_NAME));
                        txtPrice.setText(product.getString(TAG_PRICE));
                        txtDesc.setText(product.getString(TAG_DESCRIPTION));
                        //imageview
                        imageView1 = (ImageView)findViewById(R.id.imageView1);
                        imagen_url=product.getString("TAG_IMAGEN");
                        String imagen_url2=product.optString("TAG_IMAGEN");
                        byte[] encodeByte = Base64.decode(imagen_url, Base64.DEFAULT);
                        Bitmap bitmap = BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);

                            imageView1.setImageBitmap(bitmap);

和PHP-

        $product["imagen"] = base64_encode($result["imagen"]);

它返回一个错误:

04-10 04:12:32.344: W/System.err(1424): org.json.JSONException: No value for TAG_IMAGEN
04-10 04:12:32.364: W/System.err(1424):     at org.json.JSONObject.get(JSONObject.java:355)
04-10 04:12:32.364: W/System.err(1424):     at org.json.JSONObject.getString(JSONObject.java:515)
04-10 04:12:32.374: W/System.err(1424):     at com.example.androidhive.EditProductActivity$GetProductDetails$1.run(EditProductActivity.java:180)
04-10 04:12:32.374: W/System.err(1424):     at android.os.Handler.handleCallback(Handler.java:733)
04-10 04:12:32.374: W/System.err(1424):     at android.os.Handler.dispatchMessage(Handler.java:95)
04-10 04:12:32.404: W/System.err(1424):     at android.os.Looper.loop(Looper.java:136)
04-10 04:12:32.404: W/System.err(1424):     at android.app.ActivityThread.main(ActivityThread.java:5017)
04-10 04:12:32.404: W/System.err(1424):     at java.lang.reflect.Method.invokeNative(Native Method)
04-10 04:12:32.414: W/System.err(1424):     at java.lang.reflect.Method.invoke(Method.java:515)
04-10 04:12:32.414: W/System.err(1424):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
04-10 04:12:32.414: W/System.err(1424):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
04-10 04:12:32.434: W/System.err(1424):     at dalvik.system.NativeStart.main(Native Method)

问题是TAG,如果我放:

imagen_url=product.getString("imagen");

有效,但不适用:

imagen_url=product.getString("TAG_IMAGEN");

我不知道为什么,但有了这个改变,效果很好!