• Android Studio RecyclerView用法


    首先创建一个布局 里面放一个文本

     <TextView
            android:id="@+id/textView"
            android:layout_width="60dp"
            android:layout_height="20dp"
            android:text="TextView"
           />

    在主活动中加入RecyclerView 

     <android.support.v7.widget.RecyclerView
            android:id="@+id/recyclerView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            />

    添加一个空的活动做适配器

    package com.example.myapplication;

    import android.support.annotation.NonNull;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.support.v7.widget.RecyclerView;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.ImageView;
    import android.widget.TextView;
    import android.widget.Toast;

    import java.util.List;

    public class Main2Activity extends RecyclerView.Adapter<Main2Activity.ViewHolder> {

    private List<String> list;

    static class ViewHolder extends RecyclerView.ViewHolder
    {
    TextView name;
    View Vie;
    public ViewHolder(View v)
    {
    super(v);
    Vie=v;
    name=v.findViewById(R.id.textView);
    }

    }

    public Main2Activity(List<String> lists)
    {
    list=lists;
    }

    @NonNull
    @Override
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
    View view=LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.file,viewGroup,false) ;//加载要自定义的布局
    final ViewHolder holder=new ViewHolder(view);
    holder.Vie.setOnClickListener(new View.OnClickListener(){//注册单击事件
    @Override
    public void onClick(View v) {

    String string= list.get( holder.getAdapterPosition());

    Toast.makeText(v.getContext(), string, Toast.LENGTH_SHORT).show();
    }
    });
    return holder;
    }

    @Override
    public void onBindViewHolder(@NonNull ViewHolder viewHolder, int i) {
    String f=list.get(i);//获取当前数值
    viewHolder.name.setText(f);//赋值

    }

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

    }

    初始化列表数据

     private  List<String> lit=new ArrayList<>();
        private  void  inte()
        {
            lit.add("3");
            lit.add("2");
            lit.add("3");
        }
           inte();
           RecyclerView recyclerView=findViewById(R.id.recyclerView);//获取控件值
            LinearLayoutManager layoutManager=new LinearLayoutManager(this);//线性布局
             recyclerView.setLayoutManager(layoutManager);
           Main2Activity ad=new Main2Activity(lit);
            recyclerView.setAdapter(ad);
  • 相关阅读:
    git 创建项目
    【转载】Nginx-Lua模块的执行顺序
    【转】微信oauth授权过程
    vps
    【转载】centos安装字体
    【转载】TortoiseGit图标消失
    【转载】linux权限
    js 获取url 中的参数;
    手机下拉/上拉刷新(基于jq或者zepto)
    vscode快捷键
  • 原文地址:https://www.cnblogs.com/feizianquan/p/10229582.html
Copyright © 2020-2023  润新知