最近用了Android Studio,发现插件Android Code Generator与插件Android Annotations是绝配,可以只写逻辑代码,省了好多的无用功,下面给大家说下我总结的一些Android annotations 框架的基本用法即常用的到的关键字。希望能帮到各位新手。
1)@EActivity(R.layout.xxx_activity)
绑定相应的界面到指定的Activity
2)@EFragment(R.layout.xxx_fragment)
绑定相应的界面到指定的Fragment
3)@EBean
创建一个普通的类,但这个类必须仅仅只能有一个构造函数,参数最多有一个context。
声明一个单例类,
@Ebean(scope = Scope.Singleton)
4)@Bean
声明一个类,
@Bean
MyClass myClass;
声明一个接口
@Bean(MyInterface)
MyInterface myInterface;
5)@RootContext
声明一个根环境(包括Activity,Service,Context)
例如:@RootContext
MyActivity myActivity;
6)@AfterInject
在类创建的时候做一些操作。
7)@EView
继承自控件的自定义控件(如继承自Button,TextView...)
@EViewGroup
继承自布局的自定义控件(如继承自LinearLayout,RelativeLayout...)
8)@StringRes,@ColorsRes,@DimensionRes,@AnimationRes...
声明继承自资源文件里面的常量
第一种:声明的变量一定要与变量的id名称一致
@ StringRes
String hello
第二种:声明的变量名称可以随便
@ StringRes (R.id.xxxx)
String hello_world
其他Res
- @BooleanRes
- @ColorStateListRes
- @DrawableRes
- @IntArrayRes
- @IntegerRes
- @LayoutRes
- @MovieRes
- @TextRes
- @TextArrayRes
- @StringArrayRes
9)@EApplication,@EService,@EProvider,@EReceiver
声明一个Application,Service, Provider, Receiver
接收广播处理用@Receiver
@Receiver(actions="xxx.xxxx.xxxx.xxxx.ACTION_1")
protected void method1(){
//处理
}
10)@ViewById
第一种:声明的控件的名称一定要与控件的id名称一致
@ViewById
Button myButton
第二种:声明的控件名称可以随便
@ViewById(R.id.xxxx)
Button btnXXX
11)@AfterViews
在这里进行一些view控件的设置,这个方法一般在onCreate方法之后执行
12)@Extra
第一种:
接收传来的值,注意接收到的值的名称一定要与传值时的key值一致
第二种:
@Extra(key值)
13)@FragmentArg //等同于Fragment Argument
用法同上
14)@HttpClient
声明一个HttpClient对象
15)@Click
点击事件,用法:
第一种:
@Click(R.id.xxx)
void btnClick(){}
第二种:
@Click
void btnClickM(){}//若不指定id则函数名与控件的id对应
其他点击事件处理同上
16)@Background
声明后台执行的操作
17)@UiThread
声明UI线程里面执行的操作
18)@OnActivityResult
声明方法OnActivityResult