• 开发Android项目中使用androidannotations


    前言

    最近接手了一个工程,使用了androidannotations,因为以前使用过butterknife所以有似曾相识的感觉,但是有些用法还是不一样,所以就花时间学习了下androidannotations的使用方法并做了一下记录.

    androidannotations
    Git链接
    文档地址

    准备工作

    1.在Android Studio中新建一个Android项目
    2.在工程gradle.build文件中加入androidannotations依赖,更新gradle,使在工程中可以成功引用相关方法
    在工程build.gradle(最外层)文件dependencies中添加:

    dependencies {
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    }

    在app/build.gradle文件中添加:

    apply plugin: 'android-apt'
    def AAVersion = '3.2'  // 可根据需要修改版本号
    
    dependencies {
        apt "org.androidannotations:androidannotations:$AAVersion"
        compile "org.androidannotations:androidannotations-api:$AAVersion"
    }
    
    apt {
        arguments {
            androidManifestFile variant.outputs[0]?.processResources?.manifestFile
            // if you have multiple outputs (when using splits), you may want to have other index than 0
    
            // you should set your package name here if you are using different application IDs
            // resourcePackageName "your.package.name"
    
            // You can set optional annotation processing options here, like these commented options:
            // logLevel 'INFO'
            // logFile '/var/log/aa.log'
        }
    }

    此时同步下工程gradle下载文件,等下载完毕准备工作就完成了。

    开始使用

    接下来通过对比原来写法和现在写法来方便记录使用方法

    1.设置布局

    @EActivity(R.layout.activity_main)
    public class MainActivity extends Activity {

    2.实例化控件

    TextView textview = (TextView) findViewById(R.id.tv_id);
    现在写法

    @ViewById(R.id.btn_btn)
    Button mBtnBtn;

    3.初始化控件显示

    @AfterViews
    void initViews() {
        // 初始化控件
        mBtnBtn.setText("button 1");
        mLvData.setAdapter(mInfoAdapter);
    }

    4.设置控件点击事件

    @Click(R.id.btn_btn)
    void btnClick() {
        // do something
    }

    5.定义常量

    @Extra
    String mInfoStr;   // 可被外部访问到

    6.打开新的Activity

    DetailActivity_.intent(this).start(); // 不带参数
    DetailActivity_.intent(this).mInfoStr("this is infoStr.").start(); // 带参数

    7.控件ListView的使用,含adapter(代码较多,请直接看Demo)

    8.在AndroidManifest.xml定义方式

    类名加下划线

    <activity android:name=".DetailActivity_"></activity>

    更多使用方法和方式请参考:

    Cookbook
    AvailableAnnotations

    总结

    使用androidannotations
    优点:减少了代码量,监听事件更容易看懂;
    缺点:有新的变量需要编译更新,否则显示红色的错误提示。

  • 相关阅读:
    CentOS7-Docker容器入门
    CentOS7-Docker 配置国内镜像源
    CentOS7 下 yum 安装 Docker CE
    VirtualBox 配置 CentOS7网卡信息
    MySQL忘记密码后重置密码(Mac )
    三栏布局的n种实现
    Seata Server环境搭建
    Nacos安装
    排查系统端口被占用
    Netty网络高性能核心原理
  • 原文地址:https://www.cnblogs.com/DreamRecorder/p/9229048.html
Copyright © 2020-2023  润新知