butterknife 基本使用
来源:互联网 发布:仙剑奇侠传mac无文字 编辑:程序博客网 时间:2024/06/10 10:46
引用:github上的使用方法
- Project的build.gradle文件中增加classpath内容:
apply plugin: 'com.android.application'apply plugin: 'android-apt'//增加这一句android { compileSdkVersion 24 buildToolsVersion "24.0.1" defaultConfig { applicationId "demo.helloworld" minSdkVersion 19 targetSdkVersion 24 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }}dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:24.1.1' compile 'com.jakewharton:butterknife:8.2.1' apt 'com.jakewharton:butterknife-compiler:8.2.1'//增加这一句}
- app的build.gradle文件中增加classpath内容:
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.1.2' classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'//增加这一句 }}allprojects { repositories { jcenter() }}task clean(type: Delete) { delete rootProject.buildDir}
- Activity中的使用(需要注意的是View变量声明的时候不能为private或者static)
public class MainActivity extends AppCompatActivity { @BindView(R.id.btn) Button mBtn; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ButterKnife.bind(this); }}
- Fragment中的使用
public class SimpleFragment extends Fragment { @InjectView(R.id.fragment_text_view) TextView mTextView; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_simple, container, false); ButterKnife.inject(this, view); mTextView.setText("TextView in Fragment are found!"); return view; }}
- Adaper ViewHolder中的使用
@Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder; if (convertView == null) { convertView = mInflater.inflate(R.layout.person_item_layout, null); holder = new ViewHolder(convertView); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } Person person = getItem(position); if (null != person) { holder.name.setText(person.getName()); holder.age.setText(String.valueOf(person.getAge())); } return convertView; } static class ViewHolder { @InjectView(R.id.person_name) TextView name; @InjectView(R.id.person_age) TextView age; public ViewHolder(View view) { ButterKnife.inject(this, view); } }
- 点击事件
@OnClick(R.id.basic_finish_button)void finishA(View view) { finish();}
除了点击事件@OnClick,还有ListView的点击@OnItemClick, CheckBox的@OnCheckedChanged等等.
可以一次指定多个id,为多个View绑定一个事件处理方法
@OnClick({R.id.button_enable, R.id.button_disable, R.id.button_alpha_0, R.id.button_alpha_1})void editViewsClicked() { Toast.makeText(this, "You click the Button!", Toast.LENGTH_SHORT).show();}
- Android ButterKnife Zelezny插件的使用
- 打开Plugins界面
按照上图中1,2,3指示操作(注意:这里我的Android Studio中已经安装了该插件,所以显示的内容不太一样)。然后重启Android Studio。 - 在代码中使用
在布局文件名上,右键
- 打开Plugins界面
选择“Confirm”后,就会自动生成各个在布局文件中带有id 属性的view的注解形式。
0 0
- ButterKnife基本使用
- ButterKnife基本使用
- ButterKnife基本使用
- ButterKnife基本使用
- ButterKnife基本使用
- ButterKnife的基本使用
- ButterKnife基本使用
- ButterKnife 基本使用
- ButterKnife基本使用
- ButterKnife基本使用
- butterknife 基本使用
- ButterKnife的基本使用
- ButterKnife基本使用
- ButterKnife基本使用
- ButterKnife基本使用
- ButterKnife基本使用。
- butterknife的基本使用
- ButterKnife基本使用
- spring-day1
- 初学者之C与C++小甲鱼习题
- 一个灵活的介绍界面 EAIntroView
- HDU 5839 Special Tetrahedron(计算几何)
- 新的不良资产可能会出现在SBI
- butterknife 基本使用
- 递归算法练习题
- jquery 插件版本冲突处理
- 新闻客户端02 - 完善TabBar
- 130. Surrounded Regions
- 首页垂直滚动TextView广告效果,使用TextSwicher+animation实现
- HDUOJ5835Danganronpa&&2016中国大学生程序设计竞赛 - 网络选拔赛1004
- 插入排序(Java)
- spring-mvc框架学习初长成