Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android imagebuttons上带有onclick的JSon数组响应_Android_Arrays_Json - Fatal编程技术网

android imagebuttons上带有onclick的JSon数组响应

android imagebuttons上带有onclick的JSon数组响应,android,arrays,json,Android,Arrays,Json,对不起,我的问题只是一排 在我的项目图像中,url1、2、3、4、5是通过意图对另一项活动进行操作,并且已经运行良好 我无法上传图片,请看下面的图片 ┌──────┐┌──────┐┌──────┐┌──────┐┌──────┐ │■■■■■■││ ││ ││ ││ │ │■■■■■■││ ││ ││ ││ │ └──────┘└──────┘└──────┘└──────┘└──────┘ only first

对不起,我的问题只是一排 在我的项目图像中,url1、2、3、4、5是通过意图对另一项活动进行操作,并且已经运行良好 我无法上传图片,请看下面的图片

┌──────┐┌──────┐┌──────┐┌──────┐┌──────┐
│■■■■■■││      ││      ││      ││      │
│■■■■■■││      ││      ││      ││      │
└──────┘└──────┘└──────┘└──────┘└──────┘
 only first url parsing works another didn't.... 
(first box parsed to image_url, when it clicks image_url1,2,3,4,5 appear)
i want all rows appear, not one row
在我提问之前,我需要多学英语


我希望这些json数组响应出现在我的应用程序imagebuttons(或gridview)上 我从WAS中获得一组图像,每行数据都充当按钮 这里是json数组

{
"total" : 2,
"row" : [
     {
      "id": "c3asfasfas35sd4a35as5d4a3",
      "image_name": "20150913151562135",
      "image_url": "http://myurl/imagelocation.jpg",
      "flag": null,
      "price": "1200000",
      "image_url1": "http://image_url1/imagelocation.jpg",
      "image_url2": "http://image_url2/imagelocation.jpg",
      "image_url3": "http://image_url3/imagelocation.jpg",
      "image_url4": "http://image_url4/imagelocation.jpg",
      "image_url5": "http://image_url5/imagelocation.jpg",
      "image_url6": "http://image_url6/imagelocation.jpg",
},
{
      "id": "c3asfasfas35sd4a35as5d4a3",
      "image_name": "20150913151562135",
      "image_url": "http://myurl/imagelocation.jpg",
      "flag": null,
      "price": "1200000",
      "image_url1": "http://image_url7/imagelocation.jpg",
      "image_url2": "http://image_url8/imagelocation.jpg",
      "image_url3": "http://image_url9/imagelocation.jpg",
      "image_url4": "http://image_url10/imagelocation.jpg",
      "image_url5": "http://image_url11/imagelocation.jpg",
      "image_url6": "http://image_url12/imagelocation.jpg",
}
这是我的班级获取数据

this is my activity about receive data

private class SearchThread implements Runnable {

    @Override
    public void run() {
        try {
            HttpClient client = new DefaultHttpClient();
            HttpPost post = new HttpPost(imageSearchUrl);
            MultipartEntity reqEntity = new MultipartEntity();
            StringBody part1 = new StringBody(imageId, Charset.forName("UTF-8"));
            reqEntity.addPart("imageId", part1);
            //pages =1 :0-2 2:5-6 3:6-8
            StringBody pages = new StringBody("1");
            reqEntity.addPart("pages", pages);

            post.setEntity(reqEntity);
            post.setHeader("enctype", "multipart/form-data;");
            HttpResponse response = client.execute(post);
            int statusCode = response.getStatusLine().getStatusCode();
            if (statusCode == 200) {// success

                HttpEntity entity = response.getEntity();
                String resJson = EntityUtils.toString(entity);
                System.out.println("**** = " + resJson);
                jsonStr = resJson;
                JSONTokener jsonParser = new JSONTokener(resJson);
                JSONObject itemList = (JSONObject) jsonParser.nextValue();
                int total = itemList.getInt("total");
                int currentPage = itemList.getInt("currentPage");
                JSONArray jsonObjs = itemList.getJSONArray("rows");
                String demoUrl = "";
                String s = "";
                List<String> imageUrlList = new ArrayList<String>();
                for (int i = 0; i < jsonObjs.length(); i++) {
                    JSONObject jsonObj = jsonObjs.getJSONObject(i);
                    // String id = jsonObj.getInt("id");
                    String image_name = jsonObj.getString("image_name");
                    String image_url = jsonObj.getString("image_url");
                    String image_url1 = jsonObj.getString("image_url1");
                    String image_url2 = jsonObj.getString("image_url2");
                    String image_url3 = jsonObj.getString("image_url3");
                    String image_url4 = jsonObj.getString("image_url4");
                    String image_url5 = jsonObj.getString("image_url5");
                    String image_url6 = jsonObj.getString("image_url6");
                    String price = jsonObj.getString("price");
                    imageUrlList.add(image_url);

                    // s += " image_name = " + image_name + "image_url = " +
                    // image_url;

                    if (i == 0) {
                        urlStr = image_url1 +","+ image_url2 +","+ image_url3 +","+
                                 image_url4 +","+ image_url5 +","+ image_url6;
                        demoUrl = image_url;
                        System.out.println("########### " + image_url1 + " ---" + image_url2 + "---" + image_url3 + " ---" + image_url4 + "---" + image_url5 + " ---"
                                + image_url6 + "---");
                    }
                }
                String s1 = demoUrl.replaceAll("127.0.0.1", "url");

                mHandler.obtainMessage(0, s1).sendToTarget();
            } else {

            }

        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("%%%%%%%%%%%5" + e.toString());
        }

    }

}

public String uploadImage(String url, String filepath) {
    File file = new File(filepath);

    if (!file.exists()) {
        return null;
    }

    HttpClient client = new DefaultHttpClient();
    HttpPost post = new HttpPost(url);

    FileBody fileBody = new FileBody(file, "image/jpeg");
    MultipartEntity entity = new MultipartEntity();
    entity.addPart("image", fileBody);

    post.setEntity(entity);

    try {
        HttpResponse response = client.execute(post);
        int statusCode = response.getStatusLine().getStatusCode();
        String result = EntityUtils.toString(response.getEntity(), "utf-8");

        if (statusCode == 201) {
            // upload success
            // do something
        }

        return result;
    } catch (Exception e) {
        System.out.println(e.toString());
    }

    return null;
}

private Handler mHandler = new Handler() {
    public void handleMessage(Message msg) {
        switch (msg.what) {
        case 0:
            try {
                URL url = new URL(msg.obj.toString());
                 et3.setText(msg.obj.toString());
                new Thread(new ImageRunnable()).start();
            } catch (Exception e) {
                System.out.println("^^^^^^^" + e.toString());
            }

            break;

        case 1:
            Toast.makeText(getApplication(), "failed", Toast.LENGTH_LONG).show();
            break;
        }
    }
};

private class ImageRunnable implements Runnable {
    @Override
    public void run() {
        // get the image by use url
        HttpClient hc = new DefaultHttpClient();
        HttpGet hg = new HttpGet(et3.getText().toString());
        final Bitmap bm;
        try {
            HttpResponse hr = hc.execute(hg);
            bm = BitmapFactory.decodeStream(hr.getEntity().getContent());
        } catch (Exception e) {
            mHandler2.obtainMessage(1).sendToTarget();
            return;
        }
        mHandler2.obtainMessage(0, bm).sendToTarget();
    }
};

private Handler mHandler2 = new Handler() {
    public void handleMessage(Message msg) {
        switch (msg.what) {
        case 0:
            //ImageView iv2 = (ImageView) findViewById(R.id.imageView2);
        //  iv2.setImageBitmap((Bitmap) msg.obj);//
            imageButton1.setImageBitmap((Bitmap) msg.obj);
            Toast.makeText(getApplication(), "success", Toast.LENGTH_LONG).show();
            break;

        case 1:
            Toast.makeText(getApplication(), "failed", Toast.LENGTH_LONG).show();
            break;
        }
    }
};

@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
    switch (event.getAction()) {
    case KeyEvent.ACTION_UP: {

    }
    case KeyEvent.ACTION_DOWN: {


    }
    default:
        break;
    }
    return false;
}
这是我关于接收数据的活动
私有类SearchThread实现可运行{
@凌驾
公开募捐{
试一试{
HttpClient=new DefaultHttpClient();
HttpPost=新的HttpPost(imageSearchUrl);
MultipartEntity reqEntity=新的MultipartEntity();
StringBody part1=新的StringBody(imageId,Charset.forName(“UTF-8”));
请求实体添加部分(“图像ID”,第1部分);
//页数=1:0-2:5-6 3:6-8
StringBody页面=新的StringBody(“1”);
请求实体添加部分(“页面”,页面);
post.setEntity(reqEntity);
post.setHeader(“enctype”、“多部分/表单数据;”);
HttpResponse response=client.execute(post);
int statusCode=response.getStatusLine().getStatusCode();
如果(statusCode==200){//success
HttpEntity=response.getEntity();
字符串resJson=EntityUtils.toString(实体);
System.out.println(“*****=”+resJson);
jsonStr=resJson;
JSONTokener-jsonParser=新的JSONTokener(resJson);
JSONObject itemList=(JSONObject)jsonParser.nextValue();
inttotal=itemList.getInt(“总计”);
int currentPage=itemList.getInt(“currentPage”);
JSONArray jsonObjs=itemList.getJSONArray(“行”);
字符串demoUrl=“”;
字符串s=“”;
List imageUrlList=新建ArrayList();
for(int i=0;i<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<LinearLayout 
    android:id="@+id/linearLayout"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/linearLayout1"
    android:layout_alignParentTop="true"
    >

    <ImageButton
        android:id="@+id/picButton"
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:padding="0sp"
        android:scaleType="centerCrop"
        android:background="@drawable/ic_launcher1" />

</LinearLayout>


<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:layout_above="@+id/linearLayout2">

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Get"
       />

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.66"
        android:text="c2db6c9be8e5407c8a226ba8a0851368"
        android:visibility="gone" />
</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout2"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/linearLayout5" >


    <EditText
        android:id="@+id/editText2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:background="@android:color/white"
        android:ems="10"
        android:paddingTop="33px"
        android:inputType="textMultiLine"
        android:hint="comment" />
</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout3"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:visibility="gone">

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="IP:" />

    <EditText
        android:id="@+id/editText1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text=""
         />
</LinearLayout>

<EditText
    android:id="@+id/editText3"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:ems="10"
    android:visibility="gone" >

    <requestFocus />
</EditText>

<LinearLayout
    android:id="@+id/linearLayout4"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:orientation="vertical"
    android:weightSum="10"
    android:paddingBottom="59px"
    android:paddingTop="10dp">


    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_weight="3"
        android:text="POST"
        android:paddingLeft="100px"
        android:paddingRight="100px"
        android:textStyle="bold"
        android:textAlignment="center"
        android:textSize="60px"
        android:textColor="@android:color/white"
        />

</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout5"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/linearLayout4"
    android:layout_alignParentLeft="true"
    android:orientation="horizontal" >


    <ImageButton
        android:id="@+id/resultButton1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher1" />
    <ImageButton 
        android:id="@+id/resultButton2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher1"/>
    <ImageButton
        android:id="@+id/resultButton3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher1" />
    <ImageButton
        android:id="@+id/resultButton4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher1" />
    <ImageButton
        android:id="@+id/resultButton5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher1" />
</LinearLayout>
     HttpEntity entity = response.getEntity();
                String resJson = EntityUtils.toString(entity);
                System.out.println("**** = " + resJson);
                jsonStr = resJson;
                JSONTokener jsonParser = new JSONTokener(resJson);
                JSONObject itemList = (JSONObject) jsonParser.nextValue();
                int total = itemList.getInt("total");
                int currentPage = itemList.getInt("currentPage");
                JSONArray jsonObjs = itemList.getJSONArray("rows");
                String demoUrl = "";
                String s = "";
                List<String> imageUrlList = new ArrayList<String>();
                for (int i = 0; i < jsonObjs.length(); i++) {
                    JSONObject jsonObj = jsonObjs.getJSONObject(i);
                    // String id = jsonObj.getInt("id");
                    String image_name = jsonObj.getString("image_name");
                    String image_url = jsonObj.getString("image_url");
                    String image_url1 = jsonObj.getString("image_url1");
                    String image_url2 = jsonObj.getString("image_url2");
                    String image_url3 = jsonObj.getString("image_url3");
                    String image_url4 = jsonObj.getString("image_url4");
                    String image_url5 = jsonObj.getString("image_url5");
                    String image_url6 = jsonObj.getString("image_url6");
                    String price = jsonObj.getString("price");
                    imageUrlList.add(image_url);
                    imageUrlList.add(image_url1);
                    imageUrlList.add(image_url2);
                    imageUrlList.add(image_url3);
                    imageUrlList.add(image_url4);
                    imageUrlList.add(image_url5);
                    imageUrlList.add(image_url6);  
imageUrlList.add(image_url);
imageUrlList.add(image_url1);
imageUrlList.add(image_url2);
imageUrlList.add(image_url3); 
imageUrlList.add(image_url4); 
imageUrlList.add(image_url5);
imageUrlList.add(image_url6);