Android 自定义Dialog弹窗

来源:互联网 发布:app推广 aso优化方案 编辑:程序博客网 时间:2024/06/05 03:41
好久没有写自己的博客,作为一名合格的伸手党还是喜欢直接拿来用,感觉特别爽。最近感觉我们项目里的弹窗样式贼丑,弹窗代码也是一大堆一大堆的看着也很头疼,所以自己就想整理一个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显示完全一致,不用担心适配不适配的问题。
默认的弹窗样式自己也可以换成自己的风格。

资源地址:
http://download.csdn.net/detail/qq_32234421/9852879

原创粉丝点击