关于Butterknife 8.8.1在library中的使用

492 阅读1分钟

地址

github.com/JakeWharton…

按照github配置就可以好了

  1. 在工程build.gradle中配置

    buildscript {
        repositories {
            jcenter()
            mavenCentral()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:2.3.0'
            classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.1'
            //一定要加这个
            classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
        }
    }

  2. 在library module中的gradle中配置

    apply plugin: 'com.android.library'
    apply plugin: 'com.jakewharton.butterknife'
    
    
    class ExampleActivity extends Activity {
     //这里R.id.user 换成 R2.id.user
      @BindView(R2.id.user) Button username;
      @BindView(R2.id.pass) Button password;
    ...
    }
    @OnClick(R2.id.user) 
    public void onViewClicked(View view) {
       Toast.makeText(this, "点击事件1", Toast.LENGTH_SHORT).show();
    }
    @OnClick(R2.id.pass)
    public void onViewClicked(View view) {
       Toast.makeText(this, "点击事件2", Toast.LENGTH_SHORT).show();
    }


  //在这里根据调试 view.getId()值,在R文件中根本找不到,

@OnClick({R2.id.user, R2.id.pass})    
    public void onViewClicked(View view) {    
        switch (view.getId()) {    
            case R2.id.user:    
                Toast.makeText(this, "点击事件1", Toast.LENGTH_SHORT).show();
                break;    
            case R2.id.pass:    
                Toast.makeText(this, "点击事件2", Toast.LENGTH_SHORT).show();
                break;  
        }    
    }