xUtils更新到3.0后的基本使用规则
2016-02-15 22:03
253 查看
说实话,对于xUtils,是我最近才用到的开发框架(也是刚接触),对于其功能不得不说,简化了很多的开发步骤,可以说是非常好的开发工具,但是其最近更新到3.0也没有解决加载自定义ImageView报错的问题。
我总是喜欢用一些最新的东西,xUtils 3.0才刚更新,是一次比较大的重构,对于百度到的使用规则,基本都是3.0以前的,使得用3.0的开发者需要求解用法的时候,遇到许多阻碍,故此在这里简单介绍xUtils 3.0的使用规则。关于怎么导入功能,其实并不是本文的内容,不过在此文最后一节简单讲解了一下导入的方式。1.xUtils中的IOC框架
使用xUtils的第一步就是必须创建自己的Application类,代码如下:android:name=”.LYJApplication”
这样初始化就算完成了。
使用IOC框架的代码如下:
其一:使用IOC必须全部为私有,不然无效,这里就做演示了,不信你可以把用到IOC框架的注解的成员变量及方法全部换成public ,那么全部会无效,当然除了ContentView例外。
其二,所有用到IOC成员变量,使用的时候,必须在x.view().inject(this)后,如果写在前面,那么程序会崩溃。
2.xUtils加载图片功能
现在我们需要设置两个权限,如下:x.image().bind(image,”http://pic.baike.soso.com/p/20090711/20090711101754-314944703.jpg“);
也可以设置参数:
3.xUtils操作数据库
我们都知道,一个App中操作数据库的地方有很多,就像是否登录一样,有些地方必须登录后才能操作,那么肯定是全局变量,所以,必须将数据库的初始化放在Application,且必须提供获取数据库的方法,使得在应用程序的任何地方都可以直接获取数据库,并操作数据库,不然重复的获取与释放只能增加内存无谓的消耗。初始化数据库:
我们首先创建一个实体类,如下:
我们在Application中加入如下代码,向数据库添加数据:
4.xUtils的网络请求
Android规定UI线程是不能涉及网络任务的,所以,这里主要简单介绍Xutils的异步网络请求,同步的自行探究。使用格式如下:
本文最后附带了一下粗略模仿CSDN APP的源码,有意者可以下载看看,里面用到另一个开发框架,我用来专门处理图片的(afinal)。都说xUtils是afinal的进化版,不过在图片方面,我们觉得xUtils还有点不足。
http://download.csdn.net/detail/liyuanjinglyj/9379103
5.导入xUtils工程到Android Studio
下载地址如下:https://github.com/wyouflf/xUtils3/tree/master
㈠将下载的工程复制到Project目录下:
㈡添加到settings.gradle文件:
include ‘:app’,':xutils’
㈢编译到工程中
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.1' compile project(':xutils') }
㈣将xutils文件夹下的build.gradle中的版本与最低版本调整到与创建工程一致
compileSdkVersion 23 buildToolsVersion "23.0.1" defaultConfig { minSdkVersion 15 targetSdkVersion 23 versionCode 20151224 versionName version }
㈤添加如下代码到build.gradle(Project:XutilsDemo)中
dependencies { classpath 'com.android.tools.build:gradle:1.3.0' classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.2' classpath 'com.github.dcendents:android-maven-gradle-plugin:1.3' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }
其中红色标记为添加的代码。
点击Sync now就可以使用xUtils了。
相关文章推荐
- 160cracked-2
- Akka学习笔记(2)-ActorSystem
- NPM 与前端包管理
- 在Android Studio中的res文件夹下新建含alpha的XML文件
- HDU 1054 Strategic Game(二分图最小覆盖集)
- JavaScript 总结几个提高性能知识点
- Yii RESTful Quick Start
- USACO 2.1 frac1
- android ViewPager 不带滑动效果切换item
- codeforces626F Group Projects(dp)
- spring简单概念
- MyEclipse 启动不了
- 从头认识Spring-2.4 基于java的标准注解装配-@Inject(1)-通过属性域注入
- python排序-希尔排序
- 【数据结构】链表中倒数第k个结点
- Quartz与Spring的整合使用
- 图片压缩
- 归并排序
- **LeetCode 76. Minimum Window Substring
- JAVA判断对象是不是属于哪一个类 instanceof , isInstance ,isAssignableFrom