1、先写一个Dialog类  

CustomDialog 
package com.example.heng.adtest;

import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.view.Gravity;
import android.widget.Toast; public class CustomDialog {
//声明一个Diaglog
private AlertDialog.Builder builder;
//上下文对象
private Context context; public CustomDialog(Context cnt)
{
this.context = cnt;
} //声明弹出框方法
//buttontext :按钮名称
//title :标题
//message:信息
//callbock:返回信息
public void CreateDialog(String buttontext, String title, String message, final CallBack callbock){
builder = new AlertDialog.Builder(context);
builder.setTitle(title);
builder.setMessage(message);
//添加确定按钮
builder.setPositiveButton(buttontext, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//业务逻辑判断
callbock.isConfirm(true);
}
});
builder.create().show();
} public interface CallBack{
public void isConfirm(boolean flag);
}
  //声明toasts方法   比较简单的提示框。
  public void createToasts(String message) {
  Toast.makeText(context,message,Toast.LENGTH_LONG).show();
  }
}

2、在MainActivity中调用

package com.example.heng.adtest;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button; public class MainActivity extends AppCompatActivity { private Button buttonA;
private Button buttonB;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); buttonA = (Button) this.findViewById(R.id.button1);
buttonB = (Button) this.findViewById(R.id.button2);
buttonA.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
CustomDialog dialog = new CustomDialog(MainActivity.this);
dialog.CreateDialog("确定", "提示", "确定要删除吗?", new CustomDialog.CallBack() {
@Override
public void isConfirm(boolean flag) {
System.out.println("---------->>"+flag);
if (flag){ }
}
});
}
}); buttonB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
        CustomDialog dialog = new CustomDialog(MainActivity.this);
        dialog.createToasts("网路有异常!");
      } 
    );
  }
}

3、页面内容

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.heng.adtest.MainActivity"> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
android:id="@+id/textView" /> <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="dialog提示"
android:id="@+id/button1"
android:layout_below="@+id/textView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="38dp"
android:layout_marginStart="38dp"
android:layout_marginTop="46dp" /> <Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button2"
android:layout_toRightOf="@+id/button1"
android:layout_alignLeft="@+id/button1"
android:layout_alignStart="@+id/button1"
android:layout_marginTop="159dp"
android:text="普通提示" />
</RelativeLayout>

最新文章

  1. 编译链接 C++
  2. Android常用元件
  3. HTML5基础之textarea 和lable
  4. Juery Ajax语法
  5. PC端重置
  6. 【逆向怎么玩】 动态调试一款牛逼C++ IDE实录
  7. 浅谈HAL
  8. Bluetooth LE(低功耗蓝牙) - 第六部分(完)
  9. ajax提交整个form表单
  10. vue小白快速入门
  11. Angular 和 Vue 使用的对比总结 -- 脚手架
  12. 5.2、Android Studio截图
  13. sql day2
  14. anu小程序快速入门
  15. mouseover和mouseenter,mouseout和mouseleave的区别-引发的探索
  16. Docker 命令收集
  17. SharePoint REST API - 文件夹和文件
  18. Java之File类详解
  19. 今天才明白VC++.net的含义: VS系列的c++编译器可以支持托管C++(类似于C#,具体请看MS在线文档),当然包括winform界面开发。
  20. eclipse 里,打开的文件的各个标签,标题乱码。

热门文章

  1. Lammp安装过程
  2. django框架介绍
  3. MVC WEB api 自动生成文档
  4. Hibernate HQL基础 使用参数占位符
  5. C#基础之------进制转换
  6. C语言经典算法100例
  7. Fedora安装qt总结四种方法
  8. javascript之url转义escape()、encodeURI()和decodeURI()
  9. VS2008远程调试方法
  10. Android 操作系统的内存回收机制[转]