Android Studio 中配置Annotationes框架

来源:互联网 发布:教育信息化软件 编辑:程序博客网 时间:2024/05/17 02:37

前言

  1. 什么是框架?
    一个框架就是一个基石,那么基石就是地基的意思,
    底层框架的强壮性,决定项目的开发的容易度。

  2. 为什么需要框架呢?
    不需要可以吗?可以,但开发时间较长。

  3. android开发中哪些内容可以做成框架呢?

    • 网络模块
    • 图片缓存模块
    • 数据库模块
    • UI基础模块

      1. 开发框架给我们带来了哪些好处?
    • 开发效率的提升
    • 代码看起来更简洁
    • 好统一管理
    • 代码的复用性

正题:配置AndroidAnnotationes框架

AndroidAnnotationes框架:注解开元框架

比如:
我们经常会使用到findViewById这个方法来进行查找控件,
那么这里就使用一个注解
如:@ViewById
TextView tv;
这样就完成了找控件的工作,代码就变得简洁了。
还有一些注解比如给控件设置监听的,请求网络的等等。

配置步骤

AndroidAnnotationes的首页http://androidannotations.org/
可以看到简单的介绍和一个简单的对比案例,
另外有一个Documentation链接按钮,可跳转到Github上,这里是源码。

2.(主要是下载需要到jar包,或者源码)到Github上首先看到的是帮助文档,
点击 Get Started进行快速学习,

3.现在说一下在Android studio中配置AndroidAnnotationes框架

(1)首先是配置build.gradle
第一步:那么先在全局的build.gradle(也就是与项目同级的build.gradle)中进行配置
配置如下:

     dependencies {        classpath 'com.android.tools.build:gradle:2.1.2'        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4'//这个是需要添加的        // NOTE: Do not place your application dependencies here; they belong        // in the individual module build.gradle files    }

第二步:再到项目中的build.gradle中进行配置
配置如下:

apply plugin: 'com.android.application'    apply plugin: 'android-apt'//这个是需要添加的    def AAVersion='3.3.2'//这个是需要添加的,用于指定版本,可以指定全新版本    android {    compileSdkVersion 23    buildToolsVersion "23.0.3"    defaultConfig {        applicationId "com.ceo.testaa2"        minSdkVersion 17        targetSdkVersion 23        versionCode 1        versionName "1.0"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }}dependencies {    compile fileTree(dir: 'libs', include: ['*.jar'])    testCompile 'junit:junit:4.12'    compile 'com.android.support:appcompat-v7:23.4.0'    apt "org.androidannotations:androidannotations:$AAVersion"//添加    compile "org.androidannotations:androidannotations-api:$AAVersion"//添加    compile 'com.google.android.gms:play-services-appindexing:8.1.0'//添加}apt {//添加    arguments {        androidManifestFile variant.outputs[0].processResources.manifestFile    }}

第三步:同步配置

第四步:尝试使用框架
1.首先AndroidManifest.xml中每个使用androidAnnotations的Activity名字都要添加_

          <activity android:name=".MainActivity_">            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>        <activity android:name=".InfoActivity_"></activity>        <service android:name=".MyService_"></service>    </application>
 2.activity中的代码
    package com.ceo.testaa2;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.widget.Button;import android.widget.TextView;import org.androidannotations.annotations.AfterViews;import org.androidannotations.annotations.Click;import org.androidannotations.annotations.EActivity;import org.androidannotations.annotations.ViewById;@EActivity(R.layout.activity_main)//不用setContentView();public class MainActivity extends AppCompatActivity {    @ViewById(R.id.text1)//初始化控件,不用findViewById();    TextView tv;    @ViewById(R.id.bnt)    Button bnt;    @Click(R.id.bnt)//为ID为bnt的控件添加监听事件    void startInfoActivity()    {       Intent it = new Intent(MainActivity.this,InfoActivity_.class);        startActivity(it);    }    @Click(R.id.bnt1)//开启服务    void startMyService(){        Intent it = new Intent(MainActivity.this,MyService_.class);        startService(it);    }    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);    }}

列出常用的注释标签

@EActivity@EService@ViewById@ViewsById@AfterViews@Extra@Click@LongClick@ItemClick@ItemLongClick@Tounch

…还有很多,这里就不做多的列举了

0 0
原创粉丝点击