Java (Android)使用列表中的字符串创建RecyclerView

Java (Android)使用列表中的字符串创建RecyclerView,java,android,list,android-recyclerview,Java,Android,List,Android Recyclerview,我有一个包含姓名的列表。如何使用RecyclerView打印它们?Hi RecyclerView的简单示例 请遵循以下步骤: 在全局变量中声明此变量 private RecyclerView recyclerview; 使用此选项,您可以从服务器获得响应,并使用GSON插件创建一个模型类,然后复制并粘贴您的响应 Gson gson = new Gson(); CreateYourModel createYourModel = gson.fromJson(response_data, Your

我有一个包含姓名的
列表。如何使用RecyclerView打印它们?

Hi RecyclerView的简单示例

请遵循以下步骤:

  • 在全局变量中声明此变量

    private RecyclerView recyclerview;
    
  • 使用此选项,您可以从服务器获得响应,并使用GSON插件创建一个模型类,然后复制并粘贴您的响应

    Gson gson = new Gson();
    CreateYourModel createYourModel = gson.fromJson(response_data, YourActivity.class);
    
    RecyclerAdapter  mAdapter = new RecyclerAdapter(createYourModel);
    
    RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getActivity());
    recyclerview.setLayoutManager(mLayoutManager);
    recyclerview.setItemAnimator(new DefaultItemAnimator());
    recyclerview.setAdapter(mAdapter);
    recyclerview.setNestedScrollingEnabled(false);
    
  • 这是您的回收适配器,请使用相同的

    public class RecyclerAdapter extends         RecyclerView.Adapter<RecyclerAdapter.MyViewHolder> {
    
    private CreateYourModel mList;
    
    public class MyViewHolder extends RecyclerView.ViewHolder {
    public TextView tvdate;
    
    public MyViewHolder(View view) {
        super(view);
        tvdate = (TextView) view.findViewById(R.id.tvdate);
    
    }
    }
    
    
    public RecyclerAdapterCreateYourModel mList) {
    this.mList = mList;
    }
    
    @Override
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View itemView = LayoutInflater.from(parent.getContext())
            .inflate(R.layout.youritemview, parent, false);
    
    return new MyViewHolder(itemView);
    }
    
    @Override
    public void onBindViewHolder(MyViewHolder holder, int position) {
    
    holder.tvsummuryloan_repayment_date.setText(setyourdatafromlist);
    
    }
    
     @Override
    public int getItemCount() {
    return mList.size();
    }
    }
    
    公共类RecyclerAdapter扩展了RecyclerView.Adapter{ 私有模型列表; 公共类MyViewHolder扩展了RecyclerView.ViewHolder{ 公共文本查看日期; 公共MyViewHolder(视图){ 超级(视图); tvdate=(TextView)view.findViewById(R.id.tvdate); } } 公共回收器适配器CreateYourModel(MSList){ this.mList=mList; } @凌驾 公共MyViewHolder onCreateViewHolder(视图组父级,int-viewType){ View itemView=LayoutInflater.from(parent.getContext()) .充气(R.layout.youritemview,父项,false); 返回新的MyViewHolder(itemView); } @凌驾 公共无效onBindViewHolder(MyViewHolder,int位置){ holder.tvsumuryloan\u还款日期.setText(setyourdatafromlist); } @凌驾 public int getItemCount(){ 返回mList.size(); } }
  • 你可以在谷歌上学习任何教程


    感谢您提供回收者视图的简单示例

    请遵循以下步骤:

  • 在全局变量中声明此变量

    private RecyclerView recyclerview;
    
  • 使用此选项,您可以从服务器获得响应,并使用GSON插件创建一个模型类,然后复制并粘贴您的响应

    Gson gson = new Gson();
    CreateYourModel createYourModel = gson.fromJson(response_data, YourActivity.class);
    
    RecyclerAdapter  mAdapter = new RecyclerAdapter(createYourModel);
    
    RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getActivity());
    recyclerview.setLayoutManager(mLayoutManager);
    recyclerview.setItemAnimator(new DefaultItemAnimator());
    recyclerview.setAdapter(mAdapter);
    recyclerview.setNestedScrollingEnabled(false);
    
  • 这是您的回收适配器,请使用相同的

    public class RecyclerAdapter extends         RecyclerView.Adapter<RecyclerAdapter.MyViewHolder> {
    
    private CreateYourModel mList;
    
    public class MyViewHolder extends RecyclerView.ViewHolder {
    public TextView tvdate;
    
    public MyViewHolder(View view) {
        super(view);
        tvdate = (TextView) view.findViewById(R.id.tvdate);
    
    }
    }
    
    
    public RecyclerAdapterCreateYourModel mList) {
    this.mList = mList;
    }
    
    @Override
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View itemView = LayoutInflater.from(parent.getContext())
            .inflate(R.layout.youritemview, parent, false);
    
    return new MyViewHolder(itemView);
    }
    
    @Override
    public void onBindViewHolder(MyViewHolder holder, int position) {
    
    holder.tvsummuryloan_repayment_date.setText(setyourdatafromlist);
    
    }
    
     @Override
    public int getItemCount() {
    return mList.size();
    }
    }
    
    公共类RecyclerAdapter扩展了RecyclerView.Adapter{ 私有模型列表; 公共类MyViewHolder扩展了RecyclerView.ViewHolder{ 公共文本查看日期; 公共MyViewHolder(视图){ 超级(视图); tvdate=(TextView)view.findViewById(R.id.tvdate); } } 公共回收器适配器CreateYourModel(MSList){ this.mList=mList; } @凌驾 公共MyViewHolder onCreateViewHolder(视图组父级,int-viewType){ View itemView=LayoutInflater.from(parent.getContext()) .充气(R.layout.youritemview,父项,false); 返回新的MyViewHolder(itemView); } @凌驾 公共无效onBindViewHolder(MyViewHolder,int位置){ holder.tvsumuryloan\u还款日期.setText(setyourdatafromlist); } @凌驾 public int getItemCount(){ 返回mList.size(); } }
  • 你可以在谷歌上学习任何教程


    谢谢

    我一直在寻找一种简单的方法,经过一段时间的摆弄,我想我找到了一种方法

    这里我使用字符串的ArrayList

    适配器类

    public class TagsAdapter extends RecyclerView.Adapter<TagsAdapter.TagsViewHolder> {
    
        ArrayList<String> arrayList;
    
        public TagsAdapter(ArrayList<String> arrayList) {
            this.arrayList = arrayList;
        }
    
        @NonNull
        @Override
        public TagsViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
            View layoutView = LayoutInflater.from(parent.getContext()).inflate(R.layout.view_holder_tags_chips, parent, false);
    
            return new TagsAdapter.TagsViewHolder(layoutView);
        }
    
        @Override
        public void onBindViewHolder(@NonNull final TagsViewHolder holder, final int position) {
            holder.tagText.setText(arrayList.get(position));
        }
    
        @Override
        public int getItemCount() {
            return arrayList.size();
        }
    
        public class TagsViewHolder extends RecyclerView.ViewHolder {
            public TextView tagText;
    
            public TagsViewHolder(View view) {
                super(view);
    
                tagText = view.findViewById(R.id.chipTextView);
            }
        }
    }
    
    在同一位置添加此方法。我假设数组列表中已经有字符串

    private void getTags() {
            recyclerView = view.findViewById(R.id.view);
            recyclerView.setNestedScrollingEnabled(false);
            recyclerView.setHasFixedSize(false);
    
            layoutManager = new LinearLayoutManager(requireActivity(), LinearLayoutManager.HORIZONTAL, false);
            //I have made my recycler view horizontal, if you want it vertical, just change the horizontal above to vertical.
            recyclerView.setLayoutManager(layoutManager);
    
            adapter = new TagsAdapter(tagsArray);
            recyclerView.setAdapter(adapter);
        }
    

    我知道这是一个老生常谈的问题,但可能会帮助那些想要一种简单直接的方法的人。

    我一直在寻找一种简单的方法,经过一段时间的摆弄,我想我找到了一种方法

    这里我使用字符串的ArrayList

    适配器类

    public class TagsAdapter extends RecyclerView.Adapter<TagsAdapter.TagsViewHolder> {
    
        ArrayList<String> arrayList;
    
        public TagsAdapter(ArrayList<String> arrayList) {
            this.arrayList = arrayList;
        }
    
        @NonNull
        @Override
        public TagsViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
            View layoutView = LayoutInflater.from(parent.getContext()).inflate(R.layout.view_holder_tags_chips, parent, false);
    
            return new TagsAdapter.TagsViewHolder(layoutView);
        }
    
        @Override
        public void onBindViewHolder(@NonNull final TagsViewHolder holder, final int position) {
            holder.tagText.setText(arrayList.get(position));
        }
    
        @Override
        public int getItemCount() {
            return arrayList.size();
        }
    
        public class TagsViewHolder extends RecyclerView.ViewHolder {
            public TextView tagText;
    
            public TagsViewHolder(View view) {
                super(view);
    
                tagText = view.findViewById(R.id.chipTextView);
            }
        }
    }
    
    在同一位置添加此方法。我假设数组列表中已经有字符串

    private void getTags() {
            recyclerView = view.findViewById(R.id.view);
            recyclerView.setNestedScrollingEnabled(false);
            recyclerView.setHasFixedSize(false);
    
            layoutManager = new LinearLayoutManager(requireActivity(), LinearLayoutManager.HORIZONTAL, false);
            //I have made my recycler view horizontal, if you want it vertical, just change the horizontal above to vertical.
            recyclerView.setLayoutManager(layoutManager);
    
            adapter = new TagsAdapter(tagsArray);
            recyclerView.setAdapter(adapter);
        }
    

    我知道这是一个老生常谈的问题,但可能有助于希望以简单明了的方式进行此操作的人。

    请添加更多详细信息您尝试了什么?我找到了许多不同的教程,但每一个教程对我来说都太复杂了,例如,单击按钮在RecyclerView中显示TextView中的文本。我只想得到一个非常简单的答案:我必须使用RecyclerView,我还不知道,我需要打印列表中的所有元素,但我不知道如何操作。请添加更多详细信息您尝试了什么?我发现了许多不同的教程,但每一个教程对我来说都太复杂了,例如,单击按钮在RecyclerView中显示TextView中的文本。我只想得到一个非常简单的答案:我必须使用RecyclerView,我还不知道它,我需要打印列表中的所有元素,我不知道怎么做。