在build.gradle中添加:
dependencies {
compile 'io.simi:simi:1.3.4'
}下载simi-v1.3.4.jar拷贝到工程目录/libs下##API
####网络访问
######异步请求
//创建异步网络访问参数实例
HttpParams params = new HttpParams();
//添加参数,支持基础类型与String、List等
params.put("name", "Selly");
//创建异步网络客户端实例
HttpClient client = new HttpClient();
//开启调试模式
client.setDebugMode(true);
//发起POST类型访问
client.newTask(HTTP.POST, "http://xxx.com/register", params, new OnHttpResponseListener() {
@Override
public void onSuccess(String response) {}
@Override
public void onFailure(Exception exception) {}
@Override
public void onStart() {}
@Override
public void onFinish() {}
});####图片相关
######基础转换
//创建图片实例
Image image;
image = new Image(getResources(), R.drawable.xxx);
image = new Image(drawable);
image = new Image(bitmap);
image = new Image(byte[]);
image = new Image(fileName);
//输出Bitmap
image.toBitmap();
//输出Drawable
image.toDrawable();
//输出Byte[]
image.toJPGByte();
image.toPNGByte();
//图片加圆角
image.transformRadius(4);
//图片裁剪圆形
image.transformRound();
//生成静态图片背景
Image.createDrawable(0xFFFFFFFF, 255, 4);######缓存下载
//创建单一实例
ImageLoader mLoader = ImageLoader.getInstance(this);
//下载网络图片并缓存
mLoader.loadBitmapByHttp(view, url, new ImageLoader.OnImageLoadListener() {
@Override
public void onImageLoadCompleted(View view, Bitmap bitmap, String url) {
//to do something...
//for example:
// ImageView imageView = (ImageView)view;
// imageView.setImageBitmap(bitmap);
}
});
//下载本地图片并缓存
mLoader.loadBitmapByFile(view, fileName, new ImageLoader.OnImageLoadListener() {
@Override
public void onImageLoadCompleted(View view, Bitmap bitmap, String fileName) {
//to do something...
}
});
//手动添加图片到缓存(同步)
//key可以任意不为空的字符串
//xxx支持类型有Drawable, Bitmap, byte[], Image
mLoader.putBitmap(key, xxx, true);
//手动添加图片到缓存(异步)
mLoader.putBitmap(key, xxx, false);
//取出手动添加到缓存的图片
mLoader.loadBitmap(key);####管理工具
######状态栏
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//支持0xfffffff颜色与Drawable图片
//颜色可以通过getResource().getColor(R.color.XXX)获得
//图片可以通过getResource().getDrawable(R.drawable.xxx)获得
new StatusBarManager(this).setColor(0xFF009EFC);
}####常规工具
######字符处理
//字符串MD5加密
StringUtils.encryptMD5(string);
//字符串SHA256加密
StringUtils.encryptSHA256(string);
//检查字符串是否是银行卡号
StringUtils.isBankCardCode(string);
//检查字符串是否是出生日期
StringUtils.isDateOfBirth(string);
//检查字符串是否是电子邮箱
StringUtils.isEmail(string);
//检查字符串是否是纯数字
StringUtils.isNumber(string);##UI
####对话框
######简单对话框
//快速使用
new SimpleDialog(this, "标题", "内容", "确认", new OnConfirmListener() {
@Override
public void onConfirm() {
//to do something...
}
}).show();
//具体使用
//添加取消字样
dialog.setCancelText("取消");
//监听Dismiss
dialog.setOnDismissListener(new OnDismissListener() {
@Override
public void onDismiss() {
//to do something...
}
});####组件
######平面按钮
<io.simi.widget.FlatButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#1E88E5"
android:text="按钮"
android:textSize="16sp" />######矩形按钮
<io.simi.widget.RectangleButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#1E88E5"
android:text="按钮"
android:textSize="16sp" />######圆角视图
使用说明:
1. 该布局拥有自定义属性,使用时需要在XML的根布局下添加:xmlns:simi="http://schemas.android.com/simi"
2. 该布局支持的自定义属性如下:
* simi:radius="12" (圆角大小)
* simi:circleMode="true" (是否开启圆形模式,true开启后圆角属性无效)XML布局使用示例
<io.simi.widget.ImageRoundView
android:layout_width="96dp"
android:layout_height="96dp"
android:src="@drawable/img"
simi:radius="12" />
<io.simi.widget.ImageRoundView
android:layout_width="96dp"
android:layout_height="96dp"
android:src="@drawable/img"
simi:circleMode="true" />####布局
######视图控制器
使用说明:
1. 该布局继承于RelativeLayout,但不建议在布局内使用其他控件
2. 该布局拥有自定义属性,使用时需要在XML的根布局下添加:xmlns:simi="http://schemas.android.com/simi"
3. 该布局支持的自定义属性如下:
* simi:type="top" (导航栏位置,top上方、top_float上方且浮空、bottom下方以及bottom_float下方且浮空)
* simi:contentColor="#FFFFFF" (内容背景颜色)
* simi:navigatorColor="#1E88EF" (导航栏背景颜色)
* simi:textSize="16" (导航栏字号)
* simi:textColor="#66FFFFFF" (导航栏字体颜色)
* simi:indicatorColor="#66FFFFFF" (选中指示线颜色)
* simi:textSelectColor="#CCFFFFFF" (导航栏选中字体颜色)XML布局使用示例
<io.simi.widget.ViewController
android:id="@+id/mViewController"
android:layout_width="match_parent"
android:layout_height="match_parent"
simi:type="top"
simi:contentColor="#FFFFFF"
simi:navigatorColor="#1E88EF"
simi:textSize="16"
simi:textColor="#66FFFFFF"
simi:indicatorColor="#66FFFFFF"
simi:textSelectColor="#CCFFFFFF">
</io.simi.widget.ViewController>Activity代码写法:
private ViewController mViewController;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mViewController = (ViewController) findViewById(R.id.mViewController);
mViewController.setAdapter(new PagerAdapter(getSupportFragmentManager()));
}
class PagerAdapter extends FragmentPagerAdapter {
private final String[] titles = { "微信", "好友", "发现", "我"};
public PagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public CharSequence getPageTitle(int index) {
return titles[index];
}
@Override
public int getCount() {
return titles.length;
}
@Override
public Fragment getItem(int index) {
return new MyFragment(index);
}
}######涟漪布局
该布局继承于LinearLayout
<io.simi.widget.RippleLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</io.simi.widget.RippleLayout>




