BaseRecyclerViewAdapterHelper icon indicating copy to clipboard operation
BaseRecyclerViewAdapterHelper copied to clipboard

请问这个项目支持viewBinding吗,有谁知道吗?

Open kouhengsheng opened this issue 3 years ago • 12 comments

请问这个项目支持viewBinding吗,有谁知道吗?

kouhengsheng avatar Apr 01 '22 02:04 kouhengsheng

能获取View就能支持, 不过我更推荐这个在维护项目: https://github.com/liangjingkanji/BRV/

liangjingkanji avatar Apr 15 '22 04:04 liangjingkanji

@liangjingkanji 兄弟,你这事自产自销啊

cuibg avatar Aug 03 '22 02:08 cuibg

@liangjingkanji 兄弟,你这事自产自销啊

偶尔发两句, 提醒下别入坑

liangjingkanji avatar Aug 03 '22 02:08 liangjingkanji

你的那个项目我也看了,很赞狠不错

cuibg avatar Aug 03 '22 07:08 cuibg

@cuibg 当然, 我认为这是目前安卓里面的唯一值得选择的rv库, 无论是功能/文档/代码质量/注释都是目前最优秀的, 不过我几乎没有什么推广宣传

对比6年没写出使用文档, 基本从不维护的BRAH, BRV会永远保持社区维护

liangjingkanji avatar Aug 03 '22 07:08 liangjingkanji

@liangjingkanji 兄弟,为啥你的github弄成了刘强东啊?这哥们有耻辱史

cuibg avatar Aug 05 '22 05:08 cuibg

@liangjingkanji 兄弟,为啥你的github弄成了刘强东啊?这哥们有耻辱史

有没有可能我就是

liangjingkanji avatar Aug 05 '22 05:08 liangjingkanji

@liangjingkanji 我要是有那个资产,才不去搞Android

cuibg avatar Aug 05 '22 05:08 cuibg

@liangjingkanji 我要是有那个资产,才不去搞Android

这位仁兄的名字就叫刘强东,和京东老板同名而已

kouhengsheng avatar Aug 05 '22 06:08 kouhengsheng

请问这个项目支持viewBinding吗,有谁知道吗?

需要自定义: 创建一个类继承QuickViewHolder public class ViewBindingHolder<T extends ViewBinding> extends QuickViewHolder {

public final T binding;

public ViewBindingHolder(@NonNull View itemView, T binding) {
    super(itemView);
    this.binding = binding;
}

}

创建一个类继承BaseQuickAdapter public abstract class BaseViewBindAdapter<T, VB extends ViewBinding> extends BaseQuickAdapter<T, ViewBindingHolder<VB>> {

protected abstract VB createViewBinding(LayoutInflater inflater, ViewGroup parent);

@NonNull
@Override
protected ViewBindingHolder<VB> onCreateViewHolder(@NonNull Context context, @NonNull ViewGroup viewGroup, int i) {
    VB binding = createViewBinding(LayoutInflater.from(context), viewGroup);
    return new ViewBindingHolder<>(binding.getRoot(), binding);
}

}

具体使用方法 public class ViewBindingAdapter extends BaseViewBindAdapter<String, ViewBindingItemViewBinding> { @Override protected ViewBindingItemViewBinding createViewBinding(LayoutInflater inflater, ViewGroup parent) { return ViewBindingItemViewBinding.inflate(inflater, parent, false); }

@Override
protected void onBindViewHolder(@NonNull ViewBindingHolder<ViewBindingItemViewBinding> holder, int i, @Nullable String s) {
    holder.binding.name.setText("第" + holder.getBindingAdapterPosition() + "条数据");
}

}

fan764093434 avatar Aug 01 '23 07:08 fan764093434

使用BRV来支持ViewBinding: BRV使用文档-ViewBinding

rv.linear().setup {
    addType<SimpleModel>(R.layout.item_simple)

    onBind {
        val binding = getBinding<ItemSimpleBinding>()
        binding.tvSimple.text = "第${bindingAdapterPosition}条数据"
    }
}.models = getData()

liangjingkanji avatar Aug 01 '23 07:08 liangjingkanji

支持viewdatabinding

------------------ 原始邮件 ------------------ 发件人: 劉強東 @.> 发送时间: 2023年8月1日 15:24 收件人: CymChad/BaseRecyclerViewAdapterHelper @.> 抄送: Subscribed @.***> 主题: Re: [CymChad/BaseRecyclerViewAdapterHelper] 请问这个项目支持viewBinding吗,有谁知道吗? (Issue #3619)

使用BRV来支持ViewBinding: BRV使用文档-ViewBinding rv.linear().setup { addType<SimpleModel>(R.layout.item_simple) onBind { val binding = getBinding<ItemSimpleBinding>() binding.tvSimple.text = "第${bindingAdapterPosition}条数据" } }.models = getData()

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you are subscribed to this thread.Message ID: @.***>

AlbertZyc avatar Aug 01 '23 07:08 AlbertZyc