本文主要是介绍2.11学习内容,设计模式:(门面模式)外观模式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
原文:http://blog.csdn.net/evankaka/article/details/43686613
GOF《设计模式》一书对Facade模式是这样描述的:
为子系统中的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使子系统更加容易使用。
本人android开速开发框架mquery也使用了这个模式,地址 https://github.com/qq179157977/mquery
使用方法:
控件操作:
mq = new MQuery(this);mq = new MQuery(view);
mq.id(R.id.img_left).clicked(this);
mq.id(R.id.btn_cancel).longclicked(this);
mq.id(R.id.lv_notification).adapter(notificationAdapter);
listview = (XListView) mq.id(R.id.lv_notification).getView();
mq.id(R.id.button1).background(R.drawable.ic_launcher);
mq.id(R.id.button1).checked(true);
mq.id(R.id.button1).getViewbitmap();
mq.id(R.id.button1).text("内容");
mq.id(R.id.button1).image(R.drawable.ic_launcher);
mq.id(R.id.button1).setSelection(1);
mq.id(R.id.button1).visibility();
mq.id(R.id.button1).visibility(View.GONE);
网络请求(支持服务器的cookie)
NetAccess.request(getApplicationContext()).byCacheGet("baoidu.com", this);
HashMap<String, String> params = new HashMap<String, String>();
params.put("page", page + "");
params.put("searchphone", searchphone);
mq.request().setFlag("add").setParams(params).byGet(Urls.GETEDORDER, this);
//请求时显示加载框(showDialog)
mq.request().setFlag("get").showDialog(true).setParams(params).byCacheGet(Urls.GETEDORDER, this);
//自定义请求的加载框(setDialog)
mq.request().setDialog(dialog).setFlag("get").showDialog(true).setParams(params).byCacheGet(Urls.GETEDORDER, this);
mq.request().byPost("baidu.com", this);
mq.request().byCachePost("baidu.com", this);
//直到成功的请求
mq.request().byUntilSuccessPost("baidu.com", this);
//处理上面未成功的请求(全部失败的)
mq.request().dealFailRequest(this);
还有各种功能,正在开发中。。。
http://www.eoeandroid.com/thread-545654-1-1.html
这篇关于2.11学习内容,设计模式:(门面模式)外观模式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!