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);
从此山高路远,纵马扬鞭。愿往后旅途,三冬暖,春不寒,天黑有灯,下雨有伞。此生尽兴,不负勇往。