在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:WelikeAndroid开源软件地址:https://gitee.com/lody/WelikeAndroid开源软件介绍:##WelikeAndroid 是什么?WelikeAndroid 是一款引入即用的便捷开发框架,致力于为程序员打造最佳的编程体验, ##欢迎加入我们的Android开发群:###142853711(WelikeAndroid交流群) WelikeAndroid目前包含五个大模块:
使用WelikeAndroid需要以下权限:<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.INTERNET" /> ##下文将教你如何圆润的使用WelikeAndroid:
##WelikeGuard(异常安全隔离机制用法):
WelikeGuard.enableGuard();
WelikeGuard.registerUnCaughtHandler(new Thread.UncaughtExceptionHandler() {@Overridepublic void uncaughtException(Thread thread, Throwable ex) { WelikeGuard.newThreadToast("出现异常了: " + ex.getMessage() );}});
/**** 自定义的异常,当异常被抛出后,会自动回调onCatchThrowable函数.*/@Catch(process = "onCatchThrowable")public class CustomException extends IllegalAccessError { public static void onCatchThrowable(Thread t){ WeLog.e(t.getName() + " 抛出了一个异常..."); }}
使用Welike做屏幕适配:Welike的ViewPorter类提供了屏幕适配的Fluent-API,我们可以通过一组流畅的API轻松做好屏幕适配. ViewPorter.from(button).ofScreen().divWidth(2).commit();//宽度变为屏幕的二分之一 ViewPorter.from(button).of(viewGroup).divHeight(2).commit();//高度变为viewGroup的二分之一 ViewPorter.from(button).div(2).commit();//宽度和高度变为屏幕的四分之一 ViewPorter.from(button).of(this).fillWidth().fillHeight().commit();//宽度和高度铺满Activity ViewPorter.from(button).sameAs(imageView).commit();//button的宽度和高度和imageView一样 WelikeHttp入门:首先来看看框架的调试信息,是不是一目了然.
WelikeHttp welikeHttp = WelikeHttp.getDefault();
HttpParams params = new HttpParams();params.putParams("app","qr.get", "data","Test");//一次性放入两对 参数 和 值//发送Get请求HttpRequest request = welikeHttp.get("http://api.k780.com:88", params, new HttpResultCallback() { @Override public void onSuccess(String content) { super.onSuccess(content); WelikeToast.toast("返回的JSON为:" + content); } @Override public void onFailure(HttpResponse response) { super.onFailure(response); WelikeToast.toast("JSON请求发送失败."); } @Override public void onCancel(HttpRequest request) { super.onCancel(request); WelikeToast.toast("请求被取消."); }}); //取消请求,会回调onCancel() request.cancel(); 当然,我们为满足需求提供了多种扩展的Callback,目前我们提供以下Callback供您选择:
如需自定义Http模块的配置(如缓存时间),请查看HttpConfig.WelikeBitmap入门:
//取得默认的WelikeBitmap实例WelikeBitmap welikeBitmap = WelikeBitmap.getDefault();
BitmapRequest request = welikeBitmap.loadBitmap(imageView,"http://img0.imgtn.bdimg.com/it/u=937075122,1381619862&fm=21&gp=0.jpg",android.R.drawable.btn_star,//加载中显示的图片android.R.drawable.ic_delete,//加载失败时显示的图片new BitmapCallback() { @Override public Bitmap onProcessBitmap(byte[] data) { //如果需要在加载时处理图片,可以在这里处理, //如果不需要处理,就返回null或者不复写这个方法. return null; } @Override public void onPreStart(String url) { super.onPreStart(url); //加载前回调 WeLog.d("===========> onPreStart()"); } @Override public void onCancel(String url) { super.onCancel(url); //请求取消时回调 WeLog.d("===========> onCancel()"); } @Override public void onLoadSuccess(String url, Bitmap bitmap) { super.onLoadSuccess(url, bitmap); //图片加载成功后回调 WeLog.d("===========> onLoadSuccess()"); } @Override public void onRequestHttp(HttpRequest request) { super.onRequestHttp(request); //图片需要请求http时回调 WeLog.d("===========> onRequestHttp()"); } @Override public void onLoadFailed(HttpResponse response, String url) { super.onLoadFailed(response, url); //请求失败时回调 WeLog.d("===========> onLoadFailed()"); }});
##WelikeDAO入门:
/*表名,可有可无,默认为类名.*/@Table(name="USER",afterTableCreate="afterTableCreate")public class User{@IDpublic int id;//id可有可无,根据自己是否需要来加./*这个注解表示name字段不能为null*/@NotNullpublic String name; public static void afterTableCreate(WelikeDao dao){ //在当前的表被创建时回调,可以在这里做一些表的初始化工作 }}
WelikeDao db = WelikeDao.instance("Welike.db");User user = new User();user.name = "Lody";db.save(user);
User savedUser = db.findBeanByID(1);
List<User> users = db.findBeans().where("name = Lody").or("id = 1").find();
User wantoUpdateUser = new User();wantoUpdateUser.name = "NiHao";db.updateDbByID(1,wantoUpdateUser);
db.deleteBeanByID(1);
##十秒钟学会WelikeActivity
=>@initData(所有标有InitData注解的方法都最早在子线程被调用)=>initRootView(bundle)=>@JoinView(将标有此注解的View自动findViewByID和setOnClickListener)=>onDataLoaded(数据加载完成时回调)=>点击事件会回调onWidgetClick(View Widget) ###关于@JoinView的细节:
@JoinView(name = "welike_btn")Button welikeBtn; @JoinView(id = R.id.welike_btn)Button welikeBtn; @JoinView(name = "welike_btn",click = false)Button welikeBtn;
##有问题反馈在使用中有任何问题,欢迎反馈给我,可以用以下联系方式跟我交流
|
请发表评论