Android的adapter中如何获得当前context
时间: 2024-03-06 09:50:08 浏览: 21
在 Android 的 Adapter 中,可以通过传递一个 Context 对象到 Adapter 的构造函数中来获得当前的 Context,例如:
```java
public class MyAdapter extends RecyclerView.Adapter<MyViewHolder> {
private Context mContext;
public MyAdapter(Context context) {
mContext = context;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
// 使用 mContext 来获取 LayoutInflater 对象
LayoutInflater inflater = LayoutInflater.from(mContext);
// ...
}
// ...
}
```
在这个例子中,我们在 MyAdapter 的构造函数中传递了一个 Context 对象,并将其保存在成员变量 mContext 中。然后,在 onCreateViewHolder 方法中,我们使用 mContext 来获取 LayoutInflater 对象来创建 ViewHolder。
需要注意的是,由于 Context 对象可能会持有 Activity 的引用,因此在使用时需要注意内存泄漏的问题。一般来说,建议使用 Application Context 或者使用 WeakReference 来避免这个问题。