github地址:https://github.com/afollestad/material-dialogs

在build.gradle中添加依赖

compile 'com.afollestad.material-dialogs:core:0.9.1.0'
compile 'com.afollestad.material-dialogs:commons:0.9.1.0'

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><Button
        android:id="@+id/button"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击我0"/><Button
        android:id="@+id/button1"android:layout_marginTop="20dp"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击我1"/><Button
        android:id="@+id/button2"android:layout_marginTop="20dp"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="点击我2"/><Button
        android:id="@+id/button3"android:layout_marginTop="20dp"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="单选"/><Button
        android:id="@+id/button4"android:layout_marginTop="20dp"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="多选"/>
</LinearLayout>

MainActivity.java

package dialogdemo.zhoujian.com.dialogdemo;import android.graphics.Color;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.afollestad.materialdialogs.DialogAction;
import com.afollestad.materialdialogs.GravityEnum;
import com.afollestad.materialdialogs.MaterialDialog;public class MainActivity extends AppCompatActivity {private MaterialDialog.Builder mBuilder;private MaterialDialog mMaterialDialog;private Button mButton;private Button mButton1;private Button mButton2;private Button mButton3;private Button mButton4;private String[] stocks = {"海虹控股", "科大讯飞", "中科创达", "掌阅科技", "沃特股份"};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mButton = (Button) findViewById(R.id.button);mButton1 = (Button) findViewById(R.id.button1);mButton2 = (Button) findViewById(R.id.button2);mButton3 = (Button) findViewById(R.id.button3);mButton4 = (Button) findViewById(R.id.button4);mButton.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {dialogComeOne();}});mButton1.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {dialogComeTwo();}});mButton2.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {dialogComeThree();}});mButton3.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {singleChiose();}});mButton4.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {mutiChoise();}});}private void mutiChoise() {mBuilder = new MaterialDialog.Builder(MainActivity.this);mBuilder.title("选择股票");mBuilder.titleGravity(GravityEnum.CENTER);mBuilder.titleColor(Color.parseColor("#000000"));mBuilder.items(stocks);mBuilder.autoDismiss(false);mBuilder.widgetColor(Color.RED);mBuilder.positiveText("确定");mBuilder.onPositive(new MaterialDialog.SingleButtonCallback() {@Overridepublic void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {}});mBuilder.itemsCallbackMultiChoice(null, new MaterialDialog.ListCallbackMultiChoice() {@Overridepublic boolean onSelection(MaterialDialog dialog, Integer[] which, CharSequence[] text) {if (text == null) {Toast.makeText(MainActivity.this, "请选择股票", Toast.LENGTH_LONG).show();} else {StringBuffer sb = new StringBuffer();for (int i = 0; i < text.length; i++) {sb.append(text[i]);}Toast.makeText(MainActivity.this, sb.toString(), Toast.LENGTH_SHORT).show();dialog.dismiss();}return false;}});mMaterialDialog = mBuilder.build();mMaterialDialog.show();}private void singleChiose() {mBuilder = new MaterialDialog.Builder(MainActivity.this);mBuilder.title("选择股票");mBuilder.titleGravity(GravityEnum.CENTER);mBuilder.titleColor(Color.parseColor("#000000"));mBuilder.items(stocks);mBuilder.autoDismiss(false);mBuilder.widgetColor(Color.RED);mBuilder.positiveText("确定");mBuilder.onPositive(new MaterialDialog.SingleButtonCallback() {@Overridepublic void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {}});mBuilder.itemsCallbackSingleChoice(-1, new MaterialDialog.ListCallbackSingleChoice() {@Overridepublic boolean onSelection(MaterialDialog dialog, View itemView, int which, CharSequence text) {if (TextUtils.isEmpty(text)) {Toast.makeText(MainActivity.this, "请选择股票", Toast.LENGTH_LONG).show();} else {Toast.makeText(MainActivity.this, text, Toast.LENGTH_LONG).show();dialog.dismiss();}return false;}});mMaterialDialog = mBuilder.build();mMaterialDialog.show();}private void dialogComeThree() {mBuilder = new MaterialDialog.Builder(MainActivity.this);mBuilder.title("选择股票");mBuilder.titleGravity(GravityEnum.CENTER);mBuilder.titleColor(Color.parseColor("#000000"));mBuilder.items(stocks);mBuilder.autoDismiss(true);mBuilder.itemsCallback(new MaterialDialog.ListCallback() {@Overridepublic void onSelection(MaterialDialog dialog, View itemView, int position, CharSequence text) {Toast.makeText(MainActivity.this, text, Toast.LENGTH_SHORT).show();}});mMaterialDialog = mBuilder.build();mMaterialDialog.show();}private void dialogComeTwo() {mBuilder = new MaterialDialog.Builder(MainActivity.this);mBuilder.title("淘牛指数");mBuilder.titleGravity(GravityEnum.CENTER);mBuilder.titleColor(Color.parseColor("#000000"));mBuilder.content("针对所有讲师的图文直播、内参、问股及用户搜索热度相关个股利用大数据检索,根据量化策略筛选出对应个股的热度指数,指数越高与讲师关联度越强.(此列表2分钟更新一次)");mBuilder.contentColor(Color.parseColor("#000000"));mMaterialDialog = mBuilder.build();mMaterialDialog.show();}private void dialogComeOne() {mBuilder = new MaterialDialog.Builder(MainActivity.this);mBuilder.title("提示");mBuilder.titleColor(Color.parseColor("#000000"));mBuilder.content("在\"设置-应用管理-淘牛邦-权限\"中开启存储空间、电话、相机权限,以便正常使用淘牛邦功能");mBuilder.contentColor(Color.parseColor("#000000"));mBuilder.positiveText("确定");mBuilder.titleGravity(GravityEnum.CENTER);mBuilder.buttonsGravity(GravityEnum.START);mBuilder.negativeText("去设置");mBuilder.cancelable(false);mMaterialDialog = mBuilder.build();mMaterialDialog.show();mBuilder.onAny(new MaterialDialog.SingleButtonCallback() {@Overridepublic void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {if (which == DialogAction.POSITIVE) {Toast.makeText(MainActivity.this, "确定", Toast.LENGTH_LONG).show();mMaterialDialog.dismiss();} else if (which == DialogAction.NEGATIVE) {Toast.makeText(MainActivity.this, "去设置", Toast.LENGTH_LONG).show();mMaterialDialog.dismiss();}}});}
}

Material Dialogs的使用相关推荐

  1. Material Dialogs库的使用

    Material Dialogs 查看全文 http://www.taodudu.cc/news/show-4259806.html 相关文章: 芯片的IR drop是什么 神经网络编译器图层面IR ...

  2. Android Material Components – MaterialAlertDialog

    Material Design 2.0 is out and we can't wait to get our hands on Dialogs. In this tutorial, we'll be ...

  3. 最新最全的 Android 开源项目合集(一)

    原文链接:https://github.com/opendigg/awesome-github-android-ui 抽屉菜单 MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Si ...

  4. 最新最全的Android开源项目集合(转)

    抽屉菜单 MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Side-Menu.Android ★3865 - 创意边侧菜单 FlowingDrawer ★1744 - 向右滑动流动 ...

  5. GitHub上受欢迎的Android UI Library

    内容 抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 ViewPager 图表(Chart) 菜单(Menu) 浮动菜 ...

  6. Android开发:开源库集合

    开源库大全 目录 抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 ViewPager 图表(Chart) 菜单(Men ...

  7. 最全面鸿蒙系统开发的相关资料收录

    开发 本示例基于 OpenHarmony 下的 JavaScript UI 框架,进行项目目录解读,JS FA.常用和自定义组件.用户交互.JS 动画的实现,通过本示例可以基本了解和学习到 JavaS ...

  8. 转载-Android 前沿UI

    原文地址:https://blog.csdn.net/qq_35224776/article/details/86064712 抽屉菜单 MaterialDrawer ★7337 - 安卓抽屉效果实现 ...

  9. GitHub 上排名前 100 的 Android 开源库介绍

    转自:http://www.codeceo.com/article/github-top-100-android-libs.html 本项目主要对目前 GitHub 上排名前 100 的 Androi ...

  10. 最全收集整理GitHub上受欢迎的Android UI Library

    抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 ViewPager 图表(Chart) 菜单(Menu) 浮动菜单 对 ...

最新文章

  1. 10个最常用 Windows Vista运行命令
  2. 第二次冲刺阶段第四天
  3. truffle详细使用教程
  4. Web后台服务开发——数据库查询之引入TypeORM
  5. BP神经网络 PID控制simulink仿真
  6. python ipaddress_Python3标准库:ipaddress Internet地址
  7. 手把手教你在Mac OS下载、编译及导入Android源码
  8. Python 新式类与经典类
  9. “Python字符串index()方法应用案例”文末三道思考题答案
  10. 报错:TargetException, 非静态方法需要一个目标
  11. html加载js那些事
  12. 新网域名服务故障的N种可能
  13. Scala笔记整理(二):Scala数据结构—数组、map与tuple
  14. android连接airprint打印机,AirPrint:iOS的打印机
  15. 互联网日报 | 张朝阳宣布2020年搜狐已盈利;永辉超市达成千店目标;腾讯云原生注册用户规模超100万...
  16. 2022常见软件测试面试题
  17. 《Cracking the Coding Interview程序员面试金典》----猫狗收容所
  18. U3D -- 一些知识点和优秀博客收藏
  19. 商务通传递中文及样式
  20. Faker的妙用---造数

热门文章

  1. 阿里云服务器价格表,阿里云服务器最新收费标准大全
  2. EM78P153单片机构成433MHz发射电路
  3. 在mandriva2009上面架构dhcp服务器
  4. 大数据统计分析架构-netty部分
  5. 后场村的加班别有不同
  6. 华为wifi的虚拟服务器,华为路由器虚拟服务器设置方法
  7. 还想打马赛克掩盖身份?人工智能让你告别打码时代
  8. 新唐NUC980读取U盘配置
  9. LANP环境编译设置
  10. C#获取当前桌面路径