1.在build.gradle(Module:App)里导以下的两个依赖
implementation ‘com.jakewharton:butterknife:8.8.1’
annotationProcessor ‘com.jakewharton:butterknife-compiler:8.8.1’
3.自定义注解click事件
创建一个名叫Onclick的接口 接着写:
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Onclick {
int value();
}
4.布局(举个例子)
《?xml version="1.0" encoding="utf-8"?》
《RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".view.activity.MainActivity"
android:background="@drawable/login_register_background"
》
《EditText
android:id="@+id/phone_edit"
android:layout_width="280dp"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="190dp"
android:backgroundTint="#fdfcfc"
/》
《ImageView
android:id="@+id/phone_img"
android:src="@drawable/register_icon_phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="175dp"
android:layout_marginLeft="118dp"
/》
《TextView
android:id="@+id/phone_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25sp"
android:text="手机号"
android:textColor="#FFFFFF"
android:layout_marginTop="175dp"
android:layout_marginLeft="152dp"
/》
/RelativeLayout》
5.
public class MainActivity extends BaseActivity {
//找id 别忘了记得初始化ButterKnife 和 销毁ButterKnife
@BindView(R.id.phone_edit)
EditText phone_edit;
@BindView(R.id.phone_img)
ImageView phone_img;
@BindView(R.id.phone_code)
TextView phone_code;
//点击事件1
@OnClick(R.id.phone_edit)
void onclick(){
phone_code.setVisibility(View.GONE);
phone_img.setVisibility(View.GONE);
}
//点击事件2
@OnClick(R.id.phone_edit)
void onclick1(){
pwd_img.setVisibility(View.GONE);
pwd_code.setVisibility(View.GONE);
}
@Override
public int getView() {
return R.layout.activity_main;
}
//初始化ButterKnife
@Override
public void initView() {
//-----在Activity如下使用-----
Unbinder unbinder =ButterKnife.bind(this);
//-----在Fragment如下使用------
//Unbinder unbinder =ButterKnife.bind(this,getActivity());
}
@Override
public void initDate() {
}
@Override
public void showView() {
}
//销毁ButterKnife
@Override
public void onDestroyView() {
super.onDestroyView();
unbinder.unbind();
}