Android开源框架之androidannotations

Android开源框架之androidannotations

Android Annotations是一个开源的框架,用于加速android应用的开发,可以使开发者把注意力都集中在功能模块的实现上,简化了代码,提升了可维护性。

如果开发者想使用Android Annotations,可以在https://github.com/excilys/androidannotations这个网址上下载,下载解压后目录结构如下图所示:

 

如果想要在eclipse开发的项目上使用的话可以选择examples目录下的HelloWorldEclipse

 

然后将其目录下的compile-libs整个文件夹如下图所示拷贝到自己的项目工程下,同时将libs目录下的androidannotations-api-3.2.jar拷贝到自己项目工程下的libs目录下。

 

整个操作完成后的项目工程的结构如下图所示:

 

此时选中项目工程中的androidannotations-api-3.2.jar并通过Build Path-->Add To Build Path将其加到Libraries中,此外还需要选中项目右键选择Properties后会弹出如下界面:

 

此时打开Java Compiler,选中Enable project specific settings设置Compiler compliance level 1.6以上,如下所示:

 

接着,选中Java Compiler下的Annotation Processing并勾选右边的Enable project specific settings选项,如下图所示:

 

点击右下角的Apply按钮会弹出下图所示界面:

 

此时点击“Yes”按钮即可,然后继续选择Annotation Processing下的Factory Path,然后勾选中间上面的Enable project specific settings选项,如下图所示:

 

此时再选择右边的Add JARs...按钮会弹出如下对话框,此时选择项目工程下combile-libs目录下的androidannotations-3.2.jar,然后点击OK即可,如下图所示:

 

最后在上一步OK操作后的界面中点击Apply按钮会弹出如下所示界面,选择“Yes”后点击下面的OK按钮即可。

 

此时使用androidannotations开源框架前的一些基本配置就已经完成了,接下来将会通过一些小demo来演示如何使用androidannotations并且也会跟正常代码做一个比较。

正常代码:

package com.example.test3;
 
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
 
public class MainActivity extends Activity {
 
private TextView content;
private Button btn;
 
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setContentView(R.layout.activity_main);
 
content = (TextView) findViewById(R.id.content);
btn = (Button) findViewById(R.id.btn);
 
btn.setOnClickListener(new OnClickListener() {
 
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,
"content:" + content.getText().toString(),
Toast.LENGTH_SHORT).show();
}
});
 
}
 
}

使用androidannotations后的代码:

package com.zjh.aap.activity;
 
import org.androidannotations.annotations.Click;
import org.androidannotations.annotations.EActivity;
import org.androidannotations.annotations.ViewById;
 
import android.app.Activity;
import android.widget.TextView;
import android.widget.Toast;
 
@EActivity(R.layout.activity_main)
/**
 * EActivity表示是一个Activity,如果Fragment的话则用EFragment表示
 * R.layout.activity_main为布局文件
 *
 */
public class MainActivity extends Activity {
 
@ViewById(R.id.content)
/**
 * ViewById(R.id.content)表示的是取得id为content的组件类似于findViewById(R.id.content)
 * 另外属性也不能使用private权限
 */
TextView content;
 
@Click
/**
 * click表示这是一个点击事件
 * btn表示的是Button按钮的id
 * 另外需要注意的是方法不能使用private权限
 */
public void btn() {
Toast.makeText(this, "content" + content.getText().toString(),
Toast.LENGTH_LONG).show();
}
 
}
 

由上面的代码不难看出,使用androidannotations开源框架的确可以省去很多代码,开发者也可以把更多的时间花在功能模块的实现上。

另外有一点需要注意的是如果使用androidannotations开源框架的话还需要在AndroidManifest.xml清单文件中做一些修改,就是在每一个注册的Activity后加一个“_”下划线,如下所示:

<activity
            android:name="com.zjh.aap.activity.MainActivity_"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
</activity><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"> </span>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值