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

用了 ButterKnife 有什么好处呢?

  •  
  •   3rdFaust · 2018 年 7 月 18 日 · 14000 次点击
    这是一个创建于 2756 天前的主题,其中的信息可能已经有所发展或是发生改变。
    @BindView @OnClick 这两个我用了用,但是 ButterKnife 的潜力不止这个吧?一般什么情况下 ButterKnife 会比较有用呢?
    12 条回复    2018-07-26 14:52:45 +08:00
    C02TobNClov1Dz56
        1
    C02TobNClov1Dz56  
       2018 年 7 月 18 日
    当然是在控件比较多的时候,减轻工作量的,同时保持代码整洁。要不然,一堆 findViewbyId 比较碍眼。AS 有插件,可以根据 setContentView 里面的 xml 文件生成 ButterKnife 代码。
    kwanzaa
        2
    kwanzaa  
       2018 年 7 月 18 日
    kotlinx 了解一下
    3rdFaust
        3
    3rdFaust  
    OP
       2018 年 7 月 18 日
    @yinbowu95 我听说 kotlin 是从俄国人那弄来的失传的秘籍,是真的么?
    3rdFaust
        4
    3rdFaust  
    OP
       2018 年 7 月 18 日
    @chengyiqun 我一直想请教一下,什么样的代码算是整洁呀?
    C02TobNClov1Dz56
        5
    C02TobNClov1Dz56  
       2018 年 7 月 18 日   ❤️ 1
    @3rdFaust 命名规范,层次分明,简约但不失可读性。你可以先看看阿里巴巴 java 开发手册 v1.3.0
    kwanzaa
        6
    kwanzaa  
       2018 年 7 月 18 日
    @3rdFaust kotlin 团队在俄罗斯啊
    3rdFaust
        7
    3rdFaust  
    OP
       2018 年 7 月 18 日
    @yinbowu95 我听江湖传说,kotlin 是苏联的失传绝技?还不只是俄罗斯团队。
    vjnjc
        8
    vjnjc  
       2018 年 7 月 18 日 via Android
    方便你看 view 引用和 resource id。
    没了。。。
    3rdFaust
        9
    3rdFaust  
    OP
       2018 年 7 月 19 日
    @vjnjc 话说 butterknife 的原理是什么呢?
    vjnjc
        10
    vjnjc  
       2018 年 7 月 19 日 via Android
    在编译的过程生产 xxxx 下划线 viewbind 的类,在 runtime 用 bind 方法调用。
    3rdFaust
        11
    3rdFaust  
    OP
       2018 年 7 月 20 日
    @vjnjc 话说 java 的 @和 C 的宏很像呀。
    122006
        12
    122006  
       2018 年 7 月 26 日
    本质就是用 aspectjx 帮你写了 findViewbyId。
    @只是个注解,本身不会有任何执行
    黄油刀改过注解名称已经把招牌弄差了
    试试 databinding 你会发现新天地的
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3607 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 10:11 · PVG 18:11 · LAX 02:11 · JFK 05:11
    ♥ Do have faith in what you're doing.