Android RecyclerView没有绘制自定义视图;onDraw方法没有被调用
创始人
2024-08-15 06:30:52
0

要在Android RecyclerView中绘制自定义视图并调用onDraw方法,可以使用自定义的RecyclerView.Adapter来实现。

首先,创建一个继承自RecyclerView.Adapter的适配器类,例如CustomAdapter。在CustomAdapter类中,创建一个继承自RecyclerView.ViewHolder的ViewHolder类,例如CustomViewHolder。在CustomViewHolder类中,重写onDraw方法来绘制自定义视图。

下面是一个示例代码:

public class CustomAdapter extends RecyclerView.Adapter {
    
    // 在CustomAdapter中添加需要显示的数据集合
    private List data;

    public CustomAdapter(List data) {
        this.data = data;
    }

    @Override
    public CustomViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        // 创建ViewHolder并返回
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_layout, parent, false);
        return new CustomViewHolder(view);
    }

    @Override
    public void onBindViewHolder(CustomViewHolder holder, int position) {
        // 在ViewHolder中设置数据
        String item = data.get(position);
        holder.textView.setText(item);
    }

    @Override
    public int getItemCount() {
        // 返回数据集合的大小
        return data.size();
    }

    // 自定义的ViewHolder类
    public static class CustomViewHolder extends RecyclerView.ViewHolder {
        private TextView textView;

        public CustomViewHolder(View itemView) {
            super(itemView);
            // 在ViewHolder中找到自定义视图的引用
            textView = itemView.findViewById(R.id.text_view);
        }

        @Override
        public void onDraw(Canvas canvas) {
            super.onDraw(canvas);
            // 在onDraw方法中绘制自定义视图
            // ...
        }
    }
}

在上面的示例中,CustomAdapter用于绑定数据和创建ViewHolder,CustomViewHolder用于获取自定义视图的引用,并在onDraw方法中进行绘制操作。

要使用CustomAdapter,可以在Activity或Fragment中实例化CustomAdapter,并将其设置给RecyclerView。例如:

RecyclerView recyclerView = findViewById(R.id.recycler_view);
List data = new ArrayList<>();
// 添加数据到data集合中
// ...
CustomAdapter adapter = new CustomAdapter(data);
recyclerView.setAdapter(adapter);
recyclerView.setLayoutManager(new LinearLayoutManager(this));

这样,在RecyclerView中的每个项上都可以绘制自定义视图,并调用onDraw方法。

相关内容

热门资讯

热点推荐(轰趴大菠萝)外挂透明... 热点推荐(轰趴大菠萝)外挂透明挂辅助神器(智能ai代打)原来真的有挂(2020已更新)(微博热搜)1...
玩家必看秘籍(wepower)... 玩家必看秘籍(wepower)外挂透明挂辅助脚本(智能ai代打)其实真的有挂(2020已更新)(哔哩...
教程攻略(fishpoker)... 教程攻略(fishpoker)外挂透明挂辅助安装(透视)总是真的有挂(2020已更新)(哔哩哔哩)1...
总算了解(wepower德州)... 总算了解(wepower德州)外挂透明挂辅助工具(智能ai代打)果真真的有挂(2022已更新)(百度...
推荐十款(wpK)外挂透明挂辅... 推荐十款(wpK)外挂透明挂辅助工具(辅助挂)的确是有挂的(2023已更新)(头条)辅助器中分为三种...
一分钟了解(pokerx)外挂... 一分钟了解(pokerx)外挂透明挂辅助黑科技(软件透明挂)的确是有挂的(2021已更新)(抖音)1...
重大消息(德州nzt)外挂透明... 重大消息(德州nzt)外挂透明挂辅助插件(软件透明挂)一般真的有挂(2025已更新)(百度)1、任何...
分享认知(拱趴大菠萝)外挂透明... 分享认知(拱趴大菠萝)外挂透明挂辅助app(智能ai代打)都是真的有挂(2022已更新)(哔哩哔哩)...
教程攻略(Aapoker)外挂... 教程攻略(Aapoker)外挂透明挂辅助软件(软件透明挂)果然真的有挂(2021已更新)(百度)1、...
玩家亲测(红龙软件德州扑克)外... 玩家亲测(红龙软件德州扑克)外挂透明挂辅助挂(智能ai代打)就是真的有挂(2020已更新)(头条)1...