V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
insomnia1232
V2EX  ›  Android

Jack Wharton 官宣 ButterKnife 废弃了

  •  1
     
  •   insomnia1232 · 2020-03-26 21:04:19 +08:00 via Android · 11343 次点击
    这是一个创建于 1697 天前的主题,其中的信息可能已经有所发展或是发生改变。
    15 条回复    2020-03-30 10:20:19 +08:00
    ReinWD
        2
    ReinWD  
       2020-03-26 21:13:10 +08:00 via Android
    青春结束了(
    insomnia1232
        3
    insomnia1232  
    OP
       2020-03-26 21:14:42 +08:00 via Android
    @hahaayaoyaoyao 感觉没有 kotlin 的插件方便哦
    lear7
        4
    lear7  
       2020-03-26 22:29:40 +08:00
    Kotlin 里在 Adapter 里还需要 findviewbyid,无法用 extension
    clodds
        5
    clodds  
       2020-03-26 22:32:00 +08:00
    所以说 尽可能用原生写就用原生写吧,第三方还是....
    basefas
        6
    basefas  
       2020-03-26 22:40:43 +08:00
    AS 直接提示也没麻烦到哪去,对项目的侵入还大,能不用就不用
    MarkTonyFromMars
        7
    MarkTonyFromMars  
       2020-03-26 23:18:20 +08:00
    @lear7

    ```
    import kotlinx.android.synthetic.main.item_layout.view.*

    override fun onBindViewHolder(holder: ViewHolder, position: Int) {
    with(holder.itemView) {
    title.text = " "
    }
    }
    ```

    另外也推荐一下我自己写的文章: https://tonnyl.io/hello-viewbinding/ 或者是 https://mp.weixin.qq.com/s/VLhUBYiQ1kYXomm9_WqAEQ
    hyyou2010
        8
    hyyou2010  
       2020-03-27 00:08:37 +08:00
    被 view-binding or data-binding 替代了。
    bkmi
        9
    bkmi  
       2020-03-27 00:40:16 +08:00   ❤️ 1
    @MarkTonyFromMars 你知道你代码里面的 title 翻译成字节码是 findViewById(R.id.title) 吗?
    一个解决办法是把 title 声明为成员变量,只 find 一次
    MarkTonyFromMars
        10
    MarkTonyFromMars  
       2020-03-27 10:41:22 +08:00
    @bkmi 我知道在字节码里每次都是 findViewById 但是上面 lear7 说不能用 kotlin android extension, 我是为了反驳这个, 能用, 只是不好用
    lear7
        11
    lear7  
       2020-03-27 12:09:57 +08:00
    @MarkTonyFromMars 在里边是可以用,但我的 GenericAdapter 是把 Binding 方法抽到外部的,在外部会报空,你知道怎么解决吗?
    MarkTonyFromMars
        12
    MarkTonyFromMars  
       2020-03-27 13:40:32 +08:00
    @lear7 还是用传统的 findViewById 吧, 用 bkmi 的那种提到的方法, 我觉得 kotlin android extension 不适合用在 recycler view adapter 里
    insomnia1232
        13
    insomnia1232  
    OP
       2020-03-27 16:02:42 +08:00
    @bkmi 不是会有个 map 缓存 view 吗 不是每次都 find 吧
    fansangg
        14
    fansangg  
       2020-03-29 00:13:16 +08:00
    @lear7 不是有 layoutContainer
    CodeGou
        15
    CodeGou  
       2020-03-30 10:20:19 +08:00
    viewbinding 真香
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1039 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 18:54 · PVG 02:54 · LAX 10:54 · JFK 13:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.