安卓创建第一个工具类
安卓创建工具类
1.运用IOC框架简化代码
注解 (Annotation):@Class 给代码看的处理代码逻辑
2. 创建自己的注解
- @Target()
ElementType.FIELD 放在属性上面
ElementType.METHOD 放在方法上面
ElementType.TYPE 放类上面
- @Retention()
- RetentionPolicy.RUNTIME 运行时
- RetentionPolicy.SOURCE 编译时
// 例子,定义属性标识 @ViewById
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ViewById {
int value();// 代表注解可以传值
}
3.解释自己的注解
- 创建自己的工具类
/**
* Created by SYLApple on 2018/12/30.
*/
public class YLkitTool {
// 遍历自己的 控件ID,添加赋值
public static void bindInitActivty(Activity activity){
Class clszz = activity.getClass();
// 1.获取所有属性
Field[] fields = clszz.getDeclaredFields();
for (Field field: fields) {
// 2.遍历所有的属性看属性上面有没有ViewById的注解
ViewById viewById = field.getAnnotation(ViewById.class);
if (viewById != null){
// 4.findViewById
int viewID = viewById.value();
View view = activity.findViewById(viewID);
try {
// 申请操作私有的对象
field.setAccessible(true);
// 5.把当前View动态注入到属性中
field.set(activity,view);
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
}
}