Android 检索JSON recycler图像库数据并以类似instagram的方式显示-单击图像库以图像名称在Recyclerview中打开

Android 检索JSON recycler图像库数据并以类似instagram的方式显示-单击图像库以图像名称在Recyclerview中打开,android,json,xml,Android,Json,Xml,我想检索json recycler图像库数据并以RecyclerView的方式显示,有人帮我吗 与Instagram一样,使用图像名称在RecyclerView中单击图像库打开 目前,我正在以网格方式显示,我不知道如何从这个回收商传递到另一个回收商: 盈利能力: public class ProfilActivity extends AppCompatActivity { private RecyclerView recyclerView; ArtistAdapterGall

我想检索json recycler图像库数据并以
RecyclerView
的方式显示,有人帮我吗

与Instagram一样,使用图像名称在
RecyclerView
中单击图像库打开

目前,我正在以网格方式显示,我不知道如何从这个回收商传递到另一个回收商:

盈利能力:

public class ProfilActivity extends AppCompatActivity {

    private RecyclerView recyclerView;
    ArtistAdapterGallary artistAdapterGallary;
    ArrayList < DataArtist > data = new ArrayList < > (); //its in progress dialog arraylist to retrieve array data


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_profil);

        new AsyncFetch().execute();

    }


    private class AsyncFetch extends AsyncTask < String, String, String > {

        ProgressDialog pdLoading = new ProgressDialog(ProfilActivity.this);
        HttpURLConnection conn;
        URL url = null;


        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            //this method will be running on UI thread
            pdLoading.setMessage("\tLoading...");
            pdLoading.setCancelable(false);
            pdLoading.show();
        }


        @Override
        protected String doInBackground(String...params) {

            try {
                url = new URL("http://exxxxxxxxxxxxxx");
            } catch (MalformedURLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                return e.toString();
            }
            try {
                conn = (HttpURLConnection) url.openConnection();
                conn.setRequestMethod("GET");
                conn.setDoOutput(true);
            } catch (ProtocolException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }

            try {
                int response_code = conn.getResponseCode();

                // Check if successful connection made
                if (response_code == HttpURLConnection.HTTP_OK) {

                    // Read data sent from server
                    InputStream input = conn.getInputStream();
                    BufferedReader reader = new BufferedReader(new InputStreamReader(input));
                    StringBuilder result = new StringBuilder();
                    String line;

                    while ((line = reader.readLine()) != null) {
                        result.append(line);
                    }

                    // Pass data to onPostExecute method
                    return (result.toString());

                } else {

                    return ("unsuccessful");
                }
            } catch (IOException e) {
                e.printStackTrace();
                return e.toString();
            } finally {
                conn.disconnect();
            }

        }

        @Override
        protected void onPostExecute(String result) {

            //this method will be running on UI thread

            pdLoading.dismiss();


            pdLoading.dismiss();
            try {

                JSONArray jArray = new JSONArray(result);

                // Extract data from json and store into ArrayList as class objects
                for (int i = 0; i < jArray.length(); i++) {


                    JSONObject json_data = jArray.getJSONObject(i);
                    DataArtist artistPic = new DataArtist();
                    artistPic.artistName = json_data.getString("name");
                    artistPic.artistImage = json_data.getString("profile_image");
                    data.add(artistPic);




                }
                // Setup and Handover data to recyclerview
                recyclerView = (RecyclerView) findViewById(R.id.profileGride);
                recyclerView.setHasFixedSize(true);
                RecyclerView.LayoutManager layoutManager = new GridLayoutManager(getApplicationContext(), 3);
                recyclerView.setLayoutManager(layoutManager);
                recyclerView.setItemAnimator(new DefaultItemAnimator());

                artistAdapterGallary = new ArtistAdapterGallary(ProfilActivity.this, data);
                //   recyclerView.setLayoutManager(new LinearLayoutManager(ProfileGrideActivity.this));
                recyclerView.setAdapter(artistAdapterGallary);



            } catch (JSONException e) {
                e.printStackTrace();
            }
        }

    }

}

我想知道如何将这些数据调用到另一个回收器中

您的问题中缺少固定代码标记
main2活动
public class ArtistAdapterGallary extends RecyclerView.Adapter < ArtistAdapterGallary.MyViewHolder > {

    private Context context;
    private LayoutInflater inflater;
    List < DataArtist > data = new ArrayList < > ();

    public ArtistAdapterGallary(ProfilActivity context, List < DataArtist > data1) {
        this.context = context;
        this.data = data1;
    }




    @Override
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View itemView = LayoutInflater.from(parent.getContext())
            .inflate(R.layout.gallary_layout, parent, false);
        return new ArtistAdapterGallary.MyViewHolder(itemView);
    }

    @Override
    public void onBindViewHolder(final ArtistAdapterGallary.MyViewHolder holder, int position) {

        final DataArtist current = data.get(position);

        holder.artistname.setText(current.artistName);
        Glide.with(context).load(data.get(position).getArtistImage()).into(holder.artistImage);

        holder.artistImage.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(context, Main2Activity.class);
                intent.putExtra("link", current.getArtistImage());
                context.startActivity(intent);
            }
        });

    }

    @Override
    public int getItemCount() {
        return data.size();
    }




    public class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {

        ImageView artistImage;
        TextView artistname;
        private View view;


        public MyViewHolder(View itemView) {
            super(itemView);

            artistImage = (ImageView) itemView.findViewById(R.id.imageGride);
            artistname = (TextView) itemView.findViewById(R.id.artistName);


        }


        @Override
        public void onClick(View v) {

            Intent intent = new Intent(context, Main2Activity.class);

            DataArtist artistData = (DataArtist) view.getTag();
            String strUrl = artistData.getArtistImage();
            String product1 = artistData.getArtistName();
            intent.putExtra("ARTIST_IMG", strUrl);
            intent.putExtra("ARTIST_NAME", product1);
            // intent.putExtra("Your string key",product1);
            context.startActivity(intent);
        }
    }
}
public class DataArtist {

    public String artistImage;

    public String artistName;
    public String artistId;

    private boolean isSelected = false;



    public DataArtist() {
        this.artistImage = artistImage;
        this.artistName = artistName;
    }


    public String getArtistId() {
        return artistId;
    }

    public void setArtistId(String artistId) {
        this.artistId = artistId;
    }

    public String getArtistImage() {
        return artistImage;
    }

    public void setArtistImage(String artistImage) {
        this.artistImage = artistImage;
    }


    public void setArtistName(String artistName) {
        this.artistName = artistName;
    }

    public String getArtistName() {
        return artistName;
    }



    public void setSelected(boolean selected) {
        boolean isSelected = selected;
    }


    public boolean isSelected() {
        return isSelected;
    }
}