Android第三方开源对话消息提示框:SweetAlertDialog(sweet-alert-dialog)

Android第三方开源对话消息提示框:SweetAlertDialog(sweet-alert-dialog)是一个套制作精美、动画效果出色生动的Android对话、消息提示框.

需要两个lib包,其中一个依赖另一个,下载地址是:点此下载

 package cn.pedant.SweetAlert.sample;

 import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View; import cn.pedant.SweetAlert.SweetAlertDialog; public class SampleActivity extends Activity implements View.OnClickListener { private int i = -1; @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sample_activity);
findViewById(R.id.basic_test).setOnClickListener(this);
findViewById(R.id.under_text_test).setOnClickListener(this);
findViewById(R.id.error_text_test).setOnClickListener(this);
findViewById(R.id.success_text_test).setOnClickListener(this);
findViewById(R.id.warning_confirm_test).setOnClickListener(this);
findViewById(R.id.warning_cancel_test).setOnClickListener(this);
findViewById(R.id.custom_img_test).setOnClickListener(this);
findViewById(R.id.progress_dialog).setOnClickListener(this);
} @Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.basic_test:
// default title "Here's a message!"
SweetAlertDialog sd = new SweetAlertDialog(this);
sd.setCancelable(true);
sd.setCanceledOnTouchOutside(true);
sd.show();
break;
case R.id.under_text_test:
new SweetAlertDialog(this).setContentText("我很漂亮,是不是啊!").show();
break;
case R.id.error_text_test:
new SweetAlertDialog(this, SweetAlertDialog.ERROR_TYPE).setTitleText("Oops...").setContentText("某些地方出错了!")
.show();
break;
case R.id.success_text_test:
new SweetAlertDialog(this, SweetAlertDialog.SUCCESS_TYPE).setTitleText("好工作!").setContentText("来点击这个按钮!")
.show();
break;
case R.id.warning_confirm_test:
new SweetAlertDialog(this, SweetAlertDialog.WARNING_TYPE).setTitleText("你确定吗?").setContentText("你确定要删除它吗!")
.setConfirmText("是的,删除!").setConfirmClickListener(new SweetAlertDialog.OnSweetClickListener() {
@Override
public void onClick(SweetAlertDialog sDialog) {
// reuse previous dialog instance
sDialog.setTitleText("删除!").setContentText("你的文件已经删除了!").setConfirmText("好的")
.setConfirmClickListener(null).changeAlertType(SweetAlertDialog.SUCCESS_TYPE);
}
}).show();
break;
case R.id.warning_cancel_test:
new SweetAlertDialog(this, SweetAlertDialog.WARNING_TYPE).setTitleText("你确定吗?").setContentText("是否删除文件!")
.setCancelText("不,退出!").setConfirmText("是的,删除!").showCancelButton(true)
.setCancelClickListener(new SweetAlertDialog.OnSweetClickListener() {
@Override
public void onClick(SweetAlertDialog sDialog) {
// reuse previous dialog instance, keep widget user
// state, reset them if you need
sDialog.setTitleText("Cancelled!").setContentText("你的文件安全:)").setConfirmText("好的")
.showCancelButton(false).setCancelClickListener(null).setConfirmClickListener(null)
.changeAlertType(SweetAlertDialog.ERROR_TYPE); // or you can new a SweetAlertDialog to show
/*
* sDialog.dismiss(); new
* SweetAlertDialog(SampleActivity.this,
* SweetAlertDialog.ERROR_TYPE)
* .setTitleText("Cancelled!") .setContentText(
* "Your imaginary file is safe :)")
* .setConfirmText("OK") .show();
*/
}
}).setConfirmClickListener(new SweetAlertDialog.OnSweetClickListener() {
@Override
public void onClick(SweetAlertDialog sDialog) {
sDialog.setTitleText("删除了!").setContentText("你的文件被删除了!").setConfirmText("好的")
.showCancelButton(false).setCancelClickListener(null).setConfirmClickListener(null)
.changeAlertType(SweetAlertDialog.SUCCESS_TYPE);
}
}).show();
break;
case R.id.custom_img_test:
new SweetAlertDialog(this, SweetAlertDialog.CUSTOM_IMAGE_TYPE).setTitleText("很漂亮!")
.setContentText("这是一张图片.").setCustomImage(R.drawable.custom_img).show();
break;
case R.id.progress_dialog:
final SweetAlertDialog pDialog = new SweetAlertDialog(this, SweetAlertDialog.PROGRESS_TYPE)
.setTitleText("载入中");
pDialog.show();
pDialog.setCancelable(false);
new CountDownTimer(800 * 7, 800) {
public void onTick(long millisUntilFinished) {
// you can change the progress bar color by ProgressHelper
// every 800 millis
i++;
switch (i) {
case 0:
pDialog.getProgressHelper().setBarColor(getResources().getColor(R.color.blue_btn_bg_color));
break;
case 1:
pDialog.getProgressHelper().setBarColor(getResources().getColor(R.color.material_deep_teal_50));
break;
case 2:
pDialog.getProgressHelper().setBarColor(getResources().getColor(R.color.success_stroke_color));
break;
case 3:
pDialog.getProgressHelper().setBarColor(getResources().getColor(R.color.material_deep_teal_20));
break;
case 4:
pDialog.getProgressHelper().setBarColor(getResources().getColor(R.color.material_blue_grey_80));
break;
case 5:
pDialog.getProgressHelper().setBarColor(getResources().getColor(R.color.warning_stroke_color));
break;
case 6:
pDialog.getProgressHelper().setBarColor(getResources().getColor(R.color.success_stroke_color));
break;
}
} public void onFinish() {
i = -1;
pDialog.setTitleText("成功了!").setConfirmText("好的").changeAlertType(SweetAlertDialog.SUCCESS_TYPE);
}
}.start();
break;
}
}
}

xml文件:

 <?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFF" > <RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="10dp" > <ImageView
android:id="@+id/logo_img"
android:layout_width="180dp"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginBottom="15dp"
android:layout_marginTop="10dp"
android:contentDescription="@string/app_name"
android:src="@drawable/logo_big" /> <TextView
android:id="@+id/txt_0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/logo_img"
android:layout_below="@id/logo_img"
android:layout_marginLeft="15dp"
android:text="show material progress"
android:textColor="#797979"
android:textSize="14sp" /> <Button
android:id="@+id/progress_dialog"
style="@style/dialog_blue_button"
android:layout_below="@id/txt_0"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:text="点击!" /> <TextView
android:id="@+id/txt_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/logo_img"
android:layout_below="@id/progress_dialog"
android:layout_marginLeft="15dp"
android:text="A basic message"
android:textColor="#797979"
android:textSize="14sp" /> <Button
android:id="@+id/basic_test"
style="@style/dialog_blue_button"
android:layout_below="@id/txt_1"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:text="点击!" /> <TextView
android:id="@+id/txt_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/logo_img"
android:layout_below="@id/basic_test"
android:layout_marginLeft="15dp"
android:layout_marginTop="15dp"
android:text="A title with a text under"
android:textColor="#797979"
android:textSize="14sp" /> <Button
android:id="@+id/under_text_test"
style="@style/dialog_blue_button"
android:layout_below="@id/txt_2"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:text="点击!" /> <TextView
android:id="@+id/txt_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/logo_img"
android:layout_below="@id/under_text_test"
android:layout_marginLeft="15dp"
android:layout_marginTop="15dp"
android:text="show error message"
android:textColor="#797979"
android:textSize="14sp" /> <Button
android:id="@+id/error_text_test"
style="@style/dialog_blue_button"
android:layout_below="@id/txt_3"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:text="点击!" /> <TextView
android:id="@+id/txt_4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/logo_img"
android:layout_below="@id/error_text_test"
android:layout_marginLeft="15dp"
android:layout_marginTop="15dp"
android:text="A success message"
android:textColor="#797979"
android:textSize="14sp" /> <Button
android:id="@+id/success_text_test"
style="@style/dialog_blue_button"
android:layout_below="@id/txt_4"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:text="点击!" /> <TextView
android:id="@+id/txt_5"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/logo_img"
android:layout_below="@id/success_text_test"
android:layout_marginLeft="15dp"
android:layout_marginTop="15dp"
android:text="A warning message, with a listener bind to the Confirm-button..."
android:textColor="#797979"
android:textSize="14sp" /> <Button
android:id="@+id/warning_confirm_test"
style="@style/dialog_blue_button"
android:layout_below="@id/txt_5"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:text="点击!" /> <TextView
android:id="@+id/txt_6"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/logo_img"
android:layout_below="@id/warning_confirm_test"
android:layout_marginLeft="15dp"
android:layout_marginTop="15dp"
android:text="A warning message, with listeners bind to Cancel and Confirm button..."
android:textColor="#797979"
android:textSize="14sp" /> <Button
android:id="@+id/warning_cancel_test"
style="@style/dialog_blue_button"
android:layout_below="@id/txt_6"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:text="点击!" /> <TextView
android:id="@+id/txt_7"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/logo_img"
android:layout_below="@id/warning_cancel_test"
android:layout_marginLeft="15dp"
android:layout_marginTop="15dp"
android:text="A message with a custom icon"
android:textColor="#797979"
android:textSize="14sp" /> <Button
android:id="@+id/custom_img_test"
style="@style/dialog_blue_button"
android:layout_below="@id/txt_7"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:text="点击!" />
</RelativeLayout> </ScrollView>

Android第三方开源对话消息提示框:SweetAlertDialog(sweet-alert-dialog)的更多相关文章

  1. 精美舒适的对话消息提示框--第三方开源--SweetAlertDialog

    SweetAlertDialog(sweet-alert-dialog)是一个套制作精美.动画效果出色生动的Android对话.消息提示框 SweetAlertDialog(sweet-alert-d ...

  2. Android:Toast简单消息提示框

    Toast是简单的消息提示框,一定时间后自动消失,没有焦点. 1.简单文本提示的方法: Toast.makeText(this, "默认的toast", Toast.LENGTH_ ...

  3. web自动化 -- 消息提示框处理 (alert、confirm、prompt)

    一.前提知识 1.警告消息框(alert) 警告消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说用户必须先关闭该消息框然后才能继续进行操作. 2. ...

  4. Android开发 ---构建对话框Builder对象,消息提示框、列表对话框、单选提示框、多选提示框、日期/时间对话框、进度条对话框、自定义对话框、投影

    效果图: 1.activity_main.xml 描述: a.定义了一个消息提示框按钮 点击按钮弹出消息 b.定义了一个选择城市的输入框 点击按钮选择城市 c.定义了一个单选提示框按钮 点击按钮选择某 ...

  5. Android 第三方开源下拉框:NiceSpinner

    Android原生的下拉框Spinner基本上可以满足Android开发对于下拉选项的设计需求,但现在越来越流行的下拉框不满足于Android原生提供的下拉框Spinner所提供的设计样式,而改用自定 ...

  6. Android应用开发学习之Toast消息提示框

    作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz 本文我们来看Toast消息提示框的用法.使用Toast消息提示框一般有三个步骤: 1.  创建一个Toast对象.可 ...

  7. Android消息提示框Toast

    Android消息提示框Toast Toast是Android中一种简易的消息提示框.和Dialog不一样的是,Toast是没有焦点的,toast提示框不能被用户点击,而且Toast显示的时间有限,t ...

  8. Android第三方开源下拉框:NiceSpinner

     Android第三方开源下拉框:NiceSpinner Android原生的下拉框Spinner基本上可以满足Android开发对于下拉选项的设计需求,但现在越来越流行的下拉框不满足于Andro ...

  9. 030 Android 第三方开源下拉框:NiceSpinner的使用+自定义Button样式+shape绘制控件背景图+图片选择器(selector)

    1.NiceSpinner下拉框控件介绍 Android原生的下拉框Spinner基本上可以满足Android开发对于下拉选项的设计需求,但现在越来越流行的下拉框不满足于Android原生提供的下拉框 ...

随机推荐

  1. uploadify多图片上传实例

    upload.php <html> <head> <meta http-equiv="Content-Type" content="text ...

  2. linux查看文件夹大小

    du -sh 查看当前文件夹大小 du -sh * | sort -n 统计当前文件夹(目录)/文件的大小,并按文件大小排序 ------------------------------------- ...

  3. caffe的data_reader.cpp分析一下干了点什么

    首先说明:下面的内容不一定对 类body: 变量:LayerParameter param_ :它里面放的是:body传进来的layerparameter的参数: BlockingQueue<s ...

  4. (一)解决Sublime Text 2中文显示乱码问题

    欲解决问题,关键在于让Sublime Text 2支持GB2312和GBK.步骤如下: 1.安装Sublime Package Control.   在Sublime Text 2上用Ctrl+-打开 ...

  5. 【Todo】蒙特卡洛(蒙特卡罗)树 & 卷积网络

    https://www.zhihu.com/question/41176911/answer/90066752 这里面有关于Deep Learning和蒙特卡洛树的一些内容 https://www.z ...

  6. epoll函数与参数总结学习 & errno的线程安全

    select/poll被监视的文件描述符数目非常大时要O(n)效率很低:epoll与旧的 select 和 poll 系统调用完成操作所需 O(n) 不同, epoll能在O(1)时间内完成操作,所以 ...

  7. 网络粘贴---Xcode中可用到的快捷键

    快捷键: 1.StoryBoard技巧 当你想直接在view中选择自己想要的元素时,但是又碍于一个view上叠加的元素太多很难直接选中,那么在这时,你同时按住键盘上的shift和 control键,然 ...

  8. openfire过滤脏话插件,控制消息是否发送

    参考:http://myopenfire.com/article/getarticle/9 package com.myopenfire.plugin; import java.io.File; im ...

  9. jquery获得option的值和对option进行操作 作者: 字体:[增加 减小] 类型:转载 时间:2013-12-13 我要评论

    jquery获得option的值和对option进行操作 作者: 字体:[增加 减小] 类型:转载 时间:2013-12-13我要评论 本文为大家介绍下jquery获得option的值和对option ...

  10. xcode6 devices,profiles 以及 iOS8 设备 查看profiles

    xcode6 devices,profiles 以及 iOS8 设备 查看profiles 1. xocde6 devices 不在 window----Organizer 下面了: 改为 Windo ...