标签:listen bitmap replace zed 图标 延迟 dismiss which instance
单例模式、建造者模式 、工厂模式、生产者模式、开发者模式、
0.单例模式: 数据库对象(SQLiteOpenHelper)
保证了在程序中只有一个实例存在并且能全局的访问到
public class Singleton { //懒汉式 /* 持有私有静态实例,防止被引用,此处赋值为null,目的是实现延迟加载 */ private static Singleton instance = null; /* 私有构造方法,防止被实例化 */ private Singleton() { } /* 1:懒汉式,静态工程方法,创建实例 */ public static synchronized Singleton getInstance() { if (instance == null) { instance = new Singleton(); } return instance; } }
1.建造者模式builder: AlertDialog.Builder Retrofit 和 OkHttp
AlertDialog.Builder builder = new Builder(this); //builder.setCancelable(false);//设置对话框是否可以消失,true:可以;false:不可以,屏蔽返回键 //设置对话框的标题 builder.setTitle("最新版本:"+mNewsVersion+".0"); //设置图标 builder.setIcon(R.drawable.ic_launcher); //设置对话框内容 builder.setMessage(mNewsMsg); //监听对话框消失的时候 builder.setOnCancelListener(new OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { //跳转到首页的操作 dialog.dismiss(); enterHome(); } }); //创建按钮 builder.setPositiveButton("立即更新", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { //隐藏对话框,下载最新版本apk dialog.dismiss(); //3.下载最新版本apk downloadAPK(); } }); builder.setNegativeButton("以后再说", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { //隐藏对话框,跳转到首页 dialog.dismiss(); enterHome(); } }); //展示对话框 builder.show();
2.工厂模式 :BitmapFactory.decodeByteArray(byte[] data, int offset,int length)
.decodeFIle(String pathName)
.decodeFileDescriptor(FileDescriptor fd)
.decodeResource(Resource res,int id)
.decodeStream(InputStream is)
3,生产者模式: handler机制 ,自己生产自己消费
标签:listen bitmap replace zed 图标 延迟 dismiss which instance
原文地址:http://www.cnblogs.com/Oldz/p/6367394.html