其实这些简单的View还是非常的简单的...虽然看起来代码量减少的并不是非常的多,但是如果对于更加复杂的操作...框架中优化好的方法还是非常的好用的...即减少了代码的冗余度,而且还实现了更多的功能...
还是看一下源码的实现过程吧...
Toast框的源码实现过程...我们可以看到,框架中的方法把原生态的方法进行了封装,我们只需要传递相关参数就可以直接使用Toast框...其实源码内部还有showToastInThread()的源码..通过开启一个新的线程
/**
* 描述:Toast提示文本.
* @param text 文本
*/
public void showToast(String text) {
Toast.makeText(this,""+text, Toast.LENGTH_SHORT).show(); //这里已经把这个方法封装好了...我们只需要传递需要显示的文本就行了...
}
/**
* 描述:Toast提示文本.
* @param resId 文本的资源ID
*/
public void showToast(int resId) {
Toast.makeText(this,""+this.getResources().getText(resId), Toast.LENGTH_SHORT).show(); //这种方法则是通过resID来设置需要显示的文本...
}
进度框的源码实现过程...源码非常的简单...我们在使用一个进度条的时候只需要调用这两种方法就可以了...
/**
* 描述:显示进度框.
*/
public void showProgressDialog() {
showProgressDialog(null); //没有显示进度的进度框..
}
/**
* 描述:显示进度框.
* @param message the message
*/
public void showProgressDialog(String message) {
// 创建一个显示进度的Dialog
if(!AbStrUtil.isEmpty(message)){
mProgressMessage = message; //设置进度框显示的信息...
}
if (mProgressDialog == null) {
mProgressDialog = new ProgressDialog(this);
// 设置点击屏幕Dialog不消失
mProgressDialog.setCanceledOnTouchOutside(false);
}
mProgressDialog.setMessage(mProgressMessage);//设置进度框显示的消息..
showDialog(AbConstant.DIALOGPROGRESS);
}
弹出框的源码我就不进行粘贴了,由于源码写的确实有点多...这里就只粘贴一下封装的方法...










