shaonianabin,程序员考试,小村糙事
在项目目录下找到build.gradle配置文件,添加内容如下
// top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.3.3' classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' // note: do not place your application dependencies here; they belong // in the inpidual module build.gradle files } } allprojects { repositories { jcenter() } } task clean(type: delete) { delete rootproject.builddir }
app目录下中找到build.gradle配置文件(和上边的配置文件不是一个文件),在其中添加如下内容
dependencies { compile filetree(dir: 'libs', include: ['*.jar']) androidtestcompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.jakewharton:butterknife:8.6.0' apt 'com.jakewharton:butterknife-compiler:8.6.0' compile 'com.android.support:appcompat-v7:25.3.1' compile 'com.android.support.constraint:constraint-layout:1.0.2' testcompile 'junit:junit:4.12' }
然后sync now同步一下就配置好了。
找到 file -> setting -> plugins,在搜索框中输入“android butterknife zelezny”,安装该插件后重启android studio。
在oncreate中初始化butterknife,然后在需要绑定的成员变量上通过bindview注解就可以绑定控件的id,之后就可以直接使用该变量操作对应的控件了。(注意:这里在定义变量是不要定义成private或static类型,否则会报错)
public class splashactivity extends appcompatactivity { @bindview(r.id.tv_splash_title) textview tvsplashtitle; @bindview(r.id.btn_splash_click) button btnsplashclick; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_splash); butterknife.bind(this); //这里一定要在setcontentview后添加 tvsplashtitle.settext("该控件已经绑定"); } }
除了可以以view的形式绑定对应的控件,也可以通过其他标签绑定。
绑定view
@bindview(r.id.tv_splash_title) textview tvsplashtitle;
绑定事件(各种事件类型,这里只列举了三个)
@onclick(r.id.btn_splash_click) public void btnclick() { toast.maketext(this, "点击事件", toast.length_short).show(); }
@onlongclick(r.id.btn_splash_click) public boolean btnlongclick() { toast.maketext(this, "长按事件", toast.length_short).show(); return true; } @bindarray(r.array.str1) string[] strings;
@onclick({r.id.btn1, r.id.btn2, r.id.btn3}) //绑定多个控件的事件 public void onviewclicked(view view) { switch (view.getid()) { case r.id.btn1: toast.maketext(this, "我是点击事件1", toast.length_short).show(); break; case r.id.btn2: toast.maketext(this, "我是点击事件2", toast.length_short).show(); break; case r.id.btn3: toast.maketext(this, "我是点击事件3", toast.length_short).show(); break; } }
绑定资源(各种资源类型等)
@bindstring(r.string.app_name) string app_name;
@bindarray(r.array.str1) string[] strings;
@bindbitmap(r.mipmap.ic_launcher) bitmap bitmap;
@bindcolor(r.color.coloraccent) int color;
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android studio 解决logcat无过滤工具栏的操作
Android Studio 恢复小窗口停靠模式(Docked Mode)
Android studio保存logcat日志到本地的操作
Android Studio快捷键生成TAG、Log.x日志输出介绍
网友评论