好久没有写自己的博客,作为一名合格的伸手党还是喜欢直接拿来用,感觉特别爽。
最近感觉我们项目里的弹窗样式贼丑,弹窗代码也是一大堆一大堆的看着也很头疼,所以自己就想整理一个Dialog的工具类使用。
废话就不多说了,直接给大家上图看下修改前后的效果吧。
注意:
自定义对话框样式思想来源于网上的一名大神,必须尊重别人成果,然后个人在其基础上更多加入了封装使得使用起来非常方便。
如果想学习一下具体怎么封装的,可以直接点击连击学习 地址 :
http://blog.csdn.net/u013064109/article/details/51990526
因为这位大神只贴的代码,资源文件和styles不是很完成,作为一名合格的伸手党是完全不能接受的,所以自己又整理了一份,底部会贴出DialogSimple的下载地址,提供给大家使用。
这里给大家贴出创建Dialog的代码,具体的工具类大家下载源码就行了。
import com.dialog.view.MikyouCommonDialog;
import android.app.Activity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//默认样式——只有一个按钮
public void dialog1(View view) {
new MikyouCommonDialog(this,"我只写了一个按钮","标题3","确定").setOnDiaLogListener(new MikyouCommonDialog.OnDialogListener() {
@Override
public void dialogPositiveListener(View customView, DialogInterface dialogInterface, int which) {
Toast.makeText(MainActivity.this, "yes:" , Toast.LENGTH_SHORT).show();
}
@Override
public void dialogNegativeListener(View customView, DialogInterface dialogInterface, int which) {
Toast.makeText(MainActivity.this, "no:", Toast.LENGTH_SHORT).show();
}
}).showDialog();
}
//默认样式——常规显示
public void dialog2(View view) {
String string = getResources().getString(R.string.alipay_explain);
new MikyouCommonDialog(this, string, "温馨提示", "确定", "取消").setOnDiaLogListener(new MikyouCommonDialog.OnDialogListener() {
@Override
public void dialogPositiveListener(View customView, DialogInterface dialogInterface, int which) {
Toast.makeText(MainActivity.this, "yes", Toast.LENGTH_SHORT).show();
}
@Override
public void dialogNegativeListener(View customView, DialogInterface dialogInterface, int which) {
Toast.makeText(MainActivity.this, "no", Toast.LENGTH_SHORT).show();
}
}).showDialog();
}
//传入自己的弹窗样式
public void dialog3(View view) {
new MikyouCommonDialog(this, R.layout.dialog_mydialog_layout, "自定义Dialog", "确定", "取消").setOnDiaLogListener(new MikyouCommonDialog.OnDialogListener() {
@Override
public void dialogPositiveListener(View customView, DialogInterface dialogInterface, int which) {
TextView viewById = (TextView) customView.findViewById(R.id.tv_message);
CheckBox viewById1 = (CheckBox) customView.findViewById(R.id.lanren_checkbox);
boolean checked = viewById1.isChecked();
Toast.makeText(MainActivity.this, "checked:" + checked + " , message = " + viewById.getText().toString().trim(), Toast.LENGTH_SHORT).show();
}
@Override
public void dialogNegativeListener(View customView, DialogInterface dialogInterface, int which) {
}
}).showDialog();
}
}
只需要几行代码就可以实现我们的弹窗显示,是不是很适合我们伸手党的风格
亲测,弹窗的styles样式,在eclipse和studio显示完全一致,不用担心适配不适配的问题。
默认的弹窗样式自己也可以换成自己的风格。