Анализировать разные данные JSON по одной и той же активности, нажимая разные кнопки

Ayush Katuwal спросил: 26 ноября 2017 в 04:23 в: android

Я хочу анализировать разные данные JSON, используя одно и то же действие, нажимая разные кнопки. Я просто хочу заключить, что у меня есть несколько ImageViews для действия, и когда я щелкаю в любом ImageView, он должен открывать одно и то же действие, но данные должны отличаться в зависимости от нажатия ImageViews. Здесь у меня есть класс активности Java, в котором присутствуют различные ImageViews.

    imageView1 = findViewById(R.id.Hospital1);
    imageView1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(Activity1.this, DetailActivity.class);
            startActivity(intent);
        }
    });    imageView2 = findViewById(R.id.Hospital2);
    imageView2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(Activity1.this, DetailActivity.class);
            startActivity(intent);
        }
    });    imageView3 = findViewById(R.id.Hospital3);
    imageView3.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(Activity1.this, DetailActivity.class);
            startActivity(intent);
        }
    });    imageView4 = findViewById(R.id.Hospital4);
    imageView4.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(Activity1.this, DetailActivity.class);
            startActivity(intent);
        }
    });}

И это моя функция DetailActivity, которую я хочу вызвать при нажатии на любой из этих ImageViews.

    aQuery.progress(R.id.progressBar).ajax(fetchurl, JSONArray.class, new AjaxCallback<JSONArray>() {
        @Override
        public void callback(String url, JSONArray array, AjaxStatus status) {
            super.callback(url, array, status);
            Log.i("response", url + "response:" + array);            ArrayList<UserInfo> list = new ArrayList<>();            for (int i = 0; i < array.length(); i++) {                try {
                    JSONObject object = array.getJSONObject(i);
                    UserInfo info = new UserInfo();
                    info.id = object.getString("Id");
                    info.servicename = object.getString("name");
                    info.amount = object.getString("amount");
                    list.add(info);                    textView1.append(info.id + "." + "\n\n");
                    textView2.append(info.servicename + " " + "\n\n");
                    textView3.append(info.amount + " " + "\n\n");                    progressbar.setVisibility(View.GONE);                } catch (JSONException je) {
                    Toast.makeText(aQuery.getContext(), "Error Parsing Data!", Toast.LENGTH_LONG).show();
                } catch (Exception e) {
                    Toast.makeText(aQuery.getContext(), "Something went wrong...", Toast.LENGTH_LONG).show();
                }            }
            if (status.getCode() == 500) {
                Toast.makeText(aQuery.getContext(), "Server is busy, Try Again!", Toast.LENGTH_LONG).show();
            } else if (status.getCode() == 404) {
                Toast.makeText(aQuery.getContext(), "Resource Not Found!", Toast.LENGTH_LONG).show();
            } else if (status.getCode() == 200) {            } else {
                Toast.makeText(aQuery.getContext(), "Unexpected Error Occured !", Toast.LENGTH_LONG).show();
            }
        }
    });

Моя проблема в том, что когда я нажимаю на любой ImageView, он открывает DetailActivity, но все данные одинаковы для всех ImageView. Могу ли я что-то сделать с базой данных? Вот изображение моей базы данных. Нажмите здесь ...

Я новичок в программировании Android, было бы более благодарно, если бы я получил блок кода, где мне нужно редактировать мой код. Я просто хочу показать данные из столбца базы данных" name2 " и" amount2 " для imageView2.

В настоящее время я использую String fetchurl ="http://192.168.0.111/MyApplication/select.php"; url. Вы можете дополнительно просмотреть мои данные Json.


0 ответов