如何在Eclipse和Android Studio中使用xUtils3(一)
2016-07-17 23:15
417 查看
如何在Eclipse和Android Studio中使用xUtils3(一)**
1.xUtils3的源码库下载地址
github库文件地址2.xUtils3简介
xUtils 包含了很多实用的android工具.xUtils 支持超大文件(超过2G)上传,更全面的http请求协议支持(11种谓词),拥有更加灵活的ORM,更多的事件注解支持且不受混淆影响…
xUtils 最低兼容Android 4.0 (api level 14). (Android 2.3?)
xUtils3变化较多所以建立了新的项目不在旧版(github.com/wyouflf/xUtils)上继续维护, 相对于旧版本:
HTTP实现替换HttpClient为UrlConnection, 自动解析回调泛型, 更安全的断点续传策略.
支持标准的Cookie策略, 区分domain, path…
事件注解去除不常用的功能, 提高性能.
数据库api简化提高性能, 达到和greenDao一致的性能
图片绑定支持gif(受系统兼容性影响, 部分gif文件只能静态显示), webp; 支持圆角, 圆形, 方形等裁剪, 支持自动旋转…
3.如何在Android studio中使用xUtils3
由于GitHub中的项目是使用Android studio开发的,所以在Android studio使用xUtils3十分简单 使用Gradle构建时添加一下依赖即可:
compile 'org.xutils:xutils:3.3.36'
4.如何在Eclipse中使用xUtils3
点击这里下载aar文件;将arr文件的后缀名改为.zip;
解压zip,在解压后的文件中得到classes.jar,建议更名为xUtils.jar,不更改也没有关系; 在jni中得到.so文件
将xUtils和.so文件拷贝到项目中libs文件夹中,就可以使用xUtils3了
5.使用前配置
权限配置<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
2.初始化xUtils
建议在application或是在BaseActivity中初始化
//在Application中初始化 public void onCreate() { super.onCreate(); x.Ext.init(this); x.Ext.setDebug(BuildConfig.DEBUG); // 是否输出debug日志, 开启debug会影响性能. }
//在BaseActivity中初始化xUtils @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); x.Ext.init(getApplication()); x.Ext.setDebug(BuildConfig.DEBUG); x.view().inject(this); }
3.使用注解
Activity中控件注解
-activity注解
@ContentView(R.layout.activity_image_view) public class ImageViewActivity extends BaseActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } }
-注解控件
@ViewInject(R.id.imageView) ImageView imageView;
-事件注解
单个事件注解
//downImageBt的点击事件 @Event(value = R.id.downImageBt,type = View.OnClickListener.class/*可选参数, 默认是View.OnClickListener.class*/) private void downImage(View view) { ------- }
多个事件注解
@Event(value={R.id.enterImage,R.id.getDataByGet,R.id.getDataByPost} ) private void onClick(View view){ switch (view.getId()) { case R.id.enterImage: startActivity(new Intent(MainActivity.this, ImageViewActivity.class)); break; case R.id.getDataByGet: getDataByGet(""); break; case R.id.getDataByPost: getDataByPost(""); break; default: break; } }
在Fragment中注解Fragment
public class BaseFragment extends Fragment { private boolean injected = false; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) { // TODO Auto-generated method stub return x.view().inject(this,inflater,container); } @Override public void onViewCreated(View view, Bundle savedInstanceState) { if (!injected) { x.view().inject(this,this.getView()); } } }
@ContentView(R.layout.fragment_image) public class ImageFragment extends BaseFragment { @ViewInject(R.id.lv_img) private ListView imageListView;
1.如何在Eclipse和Android Studio中使用xUtils3(二)
相关文章推荐
- java项目上红叉报错的解决方法
- java基础--08代码块、继承
- JAVA之图标and布局
- Maven工程聚合,多个Java工程、web工程聚合
- myeclipse环境下使用spring
- 个人学习-java-spring-aop
- Spring 装配Bean
- springmvc 注解@卡死
- Spring-AOP实践
- JAVA疯狂讲义笔记(一)
- Eclipse Android 开发环境搭建
- Java中文件的拷贝
- java内部类种类解读
- JAVA继承和多态
- 有一百盏灯,全部亮着并且从一到一百进行编号,对每盏灯做如下处理,如果该灯的编号能被1整除则拨一下开关,能被二整除再拨一下,以此类推,直到该灯的编号(不含编号本身)为至,问最后哪几盏灯亮着。
- eclipse 向HDFS中创建文件夹报错 permission denied
- java中的spring框架(1)
- maven打包错误: -source 1.5 中不支持 diamond 运算符以及@Override is not allowed when implementing interface method
- [原创]java WEB学习笔记48:其他的Servlet 监听器:域对象中属性的变更的事件监听器 (3 个),感知 Session 绑定的事件监听器(2个)
- JAVA和.NET互调用