AndroidStudio中如何使用ButterKnife

来源:互联网 发布:淘宝店有营业执照吗 编辑:程序博客网 时间:2024/05/24 04:55

首先在project的build.gradle中:

buildscript{    repositories{        mavenCentral()    }    dependencies{        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'    }}

然后在module的build.gradle文件中:
添加:
1. apply plugin: 'android-apt'
2. dependencies{
compile 'com.jakewharton:butterknife:8.4.0'
apt 'com.jakewharton:butterknife-compiler:8.4.0'
}

布局文件:

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent">    <RelativeLayout        android:id="@+id/re_title"       style="@style/title_relayout" >        <TextView            android:id="@+id/tv_title"            style="@style/title_text"            android:text="登陆"/>    </RelativeLayout>    <com.mcp1993.qqui.weight.CircularImage        android:id="@+id/cirImg"        android:layout_width="70dp"        android:layout_height="70dp"        android:layout_below="@id/re_title"        android:layout_marginTop="20dp"        android:layout_centerHorizontal="true"        android:src="@mipmap/app_logo"        />    <LinearLayout        android:id="@+id/lin_log"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_marginTop="20dp"        android:orientation="vertical"        android:layout_below="@id/cirImg">        <EditText            android:id="@+id/et_number"            android:layout_width="match_parent"            android:layout_height="45dp"            android:layout_marginLeft="20dp"            android:hint="请输入手机号"            android:textSize="16sp"            android:inputType="phone"            android:textColorHint="#CDCDC1"            android:background="@null"/>        <LinearLayout            android:layout_width="match_parent"            android:layout_height="0.5dp"            android:background="#D7D7D7"            android:orientation="vertical" >        </LinearLayout>        <EditText            android:id="@+id/et_password"            android:layout_width="match_parent"            android:layout_height="45dp"            android:layout_marginLeft="20dp"            android:hint="请输入密码"            android:textColorHint="#CDCDC1"            android:background="@null"/>        <LinearLayout            android:layout_width="match_parent"            android:layout_height="0.5dp"            android:background="#D7D7D7"            android:orientation="vertical" >        </LinearLayout>    </LinearLayout>    <Button        android:id="@+id/loginBtn"        android:layout_width="match_parent"        android:layout_height="48dp"        android:layout_below="@+id/lin_log"        android:layout_marginBottom="10dp"        android:layout_marginLeft="20dp"        android:layout_marginRight="20dp"        android:layout_marginTop="20dp"        android:background="@drawable/loginbtn_selector"        android:includeFontPadding="false"        android:text="登陆"        android:textColor="#ffffff" />    <TextView        android:id="@+id/tv_change_password"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignParentRight="true"        android:layout_below="@id/loginBtn"        android:layout_marginRight="20dp"        android:textColor="#C4E1FF"        android:textSize="16sp"        android:text="修改密码"/>    <TextView        android:id="@+id/tv_problem"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignParentBottom="true"        android:layout_alignParentLeft="true"        android:layout_marginLeft="20dp"        android:layout_marginBottom="20dp"        android:textColor="#C4E1FF"        android:textSize="16sp"        android:text="无法登陆"/>    <TextView        android:id="@+id/tv_regist"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_alignParentBottom="true"        android:layout_alignParentRight="true"        android:textColor="#C4E1FF"        android:textSize="16sp"        android:layout_marginRight="20dp"        android:layout_marginBottom="20dp"        android:text="注册"        /></RelativeLayout>

JAVA文件代码:

package com.mcp1993.qqui.ui;import android.content.Intent;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;import com.mcp1993.qqui.MainActivity;import com.mcp1993.qqui.R;import butterknife.BindView;import butterknife.ButterKnife;import butterknife.OnClick;/** * Created by Administrator on 2016/11/24 0024. */public class LoginActivity  extends AppCompatActivity {    @BindView(R.id.et_number)    EditText etNumber;    @BindView(R.id.et_password)    EditText etPassword;    @BindView(R.id.loginBtn)    Button loginBtn;    @BindView(R.id.tv_change_password)    TextView changePas;    @BindView(R.id.tv_problem)    TextView showProblem;    @BindView(R.id.tv_regist)    TextView regist;    @Override    protected void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_login);        ButterKnife.bind(this);    }    //单个点击    @OnClick(R.id.loginBtn)    public void login(){        Intent intent = new Intent(LoginActivity.this, MainActivity.class);        startActivity(intent);        finish();    }    //多个点击    @OnClick({R.id.tv_regist,R.id.tv_problem})    public void dothis(View v){        switch (v.getId()){            case R.id.tv_regist:                Toast.makeText(LoginActivity.this,"前往注册",Toast.LENGTH_SHORT).show();                break;            case R.id.tv_problem:                Toast.makeText(LoginActivity.this,"登陆遇到问题",Toast.LENGTH_SHORT).show();                break;        }    }}

代码传送门:https://github.com/mcp1993/QQUI/tree/master

0 0