recyclerview的基本使用,列出代码
时间: 2024-04-20 07:07:04 浏览: 46
好的,关于RecyclerView的基本使用,以下是一些示例代码:
1. 定义RecyclerView控件:
```xml
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="10dp"/>
```
2. 创建数据实体类:
```java
public class MyData {
private String name;
private String description;
public MyData(String name, String description) {
this.name = name;
this.description = description;
}
public String getName() {
return name;
}
public String getDescription() {
return description;
}
}
```
3. 创建Adapter类:
```java
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.MyViewHolder> {
private List<MyData> dataList;
public MyAdapter(List<MyData> dataList) {
this.dataList = dataList;
}
// 创建ViewHolder
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_layout, parent, false);
return new MyViewHolder(view);
}
// 给ViewHolder设置数据
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
MyData data = dataList.get(position);
holder.nameTextView.setText(data.getName());
holder.descriptionTextView.setText(data.getDescription());
}
// 获取数据个数
@Override
public int getItemCount() {
return dataList.size();
}
public static class MyViewHolder extends RecyclerView.ViewHolder {
TextView nameTextView;
TextView descriptionTextView;
MyViewHolder(View itemView) {
super(itemView);
nameTextView = itemView.findViewById(R.id.nameTextView);
descriptionTextView = itemView.findViewById(R.id.descriptionTextView);
}
}
}
```
4. 创建item布局文件:
```xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:orientation="vertical">
<TextView
android:id="@+id/nameTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/black"
android:textSize="18sp"/>
<TextView
android:id="@+id/descriptionTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@android:color/darker_gray"
android:textSize="14sp"/>
</LinearLayout>
```
5. 在Activity中设置RecyclerView:
```java
public class MainActivity extends AppCompatActivity {
private RecyclerView recyclerView;
private MyAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
recyclerView = findViewById(R.id.recyclerView);
// 设置LayoutManager
recyclerView.setLayoutManager(new LinearLayoutManager(this));
// 创建数据
List<MyData> dataList = new ArrayList<>();
dataList.add(new MyData("数据1", "描述1"));
dataList.add(new MyData("数据2", "描述2"));
dataList.add(new MyData("数据3", "描述3"));
// 创建Adapter
adapter = new MyAdapter(dataList);
// 设置Adapter
recyclerView.setAdapter(adapter);
}
}
```
以上就是RecyclerView的基本使用示例代码。如果您对RecyclerView还有什么不懂的地方,可以进一步提出问题。
阅读全文