1、開源地址
https://github.com/wyouflf/xUtils3.git
如果使用eclipse可以 點擊這里下載aar文件, 然后用zip解壓, 取出jar包和so文件.
2、導入工程
使用Gradle構建時添加一下依賴即可:
compile 'org.xutils:xutils:3.2.2'
使用Eclipse構建時操作步驟如下:
1、下載aar文件並使用然后用zip解壓, 取出jar包和so文件.
2、將xutils-3.2.0.jar 以及armeabi添加到工程的libs中即可。
3、簡單介紹
XUtils3一共有4大功能:注解模塊,網絡模塊,圖片加載模塊,數據庫模塊。
注解模塊
Activity的注解
1.在Application的oncreate方法中加入下面代碼: x.Ext.init(this);
x.Ext.setDebug(BuildConfig.DEBUG);
2.在Activity的oncreate方法中加入下面代碼: x.view().inject(this);
3.加載當前的Activity布局需要如下注解:
@ContentView加入到Activity的上方
4.給View進行初始化需要如下注解:
@InjectView
5.處理控件的各種響應事件需要如下注解:
@Envent
一下是一個簡單的Demo 其中加載網絡圖片需要添加權限
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
項目目錄截圖
@ContentView(R.layout.activity_main) public class MainActivity extends Activity { private Context context; @ViewInject(R.id.id_but1) private Button button1; @ViewInject(R.id.id_but2) private Button button2; @ViewInject(R.id.id_but_loadImg) private Button id_but_loadImg; @ViewInject(R.id.id_imgView) private ImageView imageView; ImageOptions imageOptions; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //注入view和事件 x.view().inject(this); context=this; imageOptions = new ImageOptions.Builder() .setSize(DensityUtil.dip2px(120), DensityUtil.dip2px(120)) .setRadius(DensityUtil.dip2px(5)) // 如果ImageView的大小不是定義為wrap_content, 不要crop. .setCrop(true) // 加載中或錯誤圖片的ScaleType //.setPlaceholderScaleType(ImageView.ScaleType.MATRIX) .setImageScaleType(ImageView.ScaleType.CENTER_CROP) //設置加載過程中的圖片 .setLoadingDrawableId(R.drawable.ic_launcher) //設置加載失敗后的圖片 .setFailureDrawableId(R.drawable.ic_launcher) //設置使用緩存 .setUseMemCache(true) //設置支持gif .setIgnoreGif(false) //設置顯示圓形圖片 // .setCircular(false) .build(); } @Event(value={R.id.id_but_loadImg}) private void loadImage(View view){ x.image().bind(imageView, "http://img2.3lian.com/2014/f2/164/d/17.jpg", imageOptions); } @Event(value={R.id.id_but1,R.id.id_but2},type=View.OnClickListener.class) private void onClick(View view){ //必須為private switch (view.getId()) { case R.id.id_but1: T.showLong(context, "點擊了id_but1....."); LogUtil.e("點擊了id_but1....."); break; case R.id.id_but2: T.showLong(context, "點擊了id_but2....."); break; default: break; } }
源碼下載地址:http://pan.baidu.com/s/1gdWlhyb
如果對你有幫助可以關注一下訂閱號