Material Dialogs的使用
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的使用相关推荐
- Material Dialogs库的使用
Material Dialogs 查看全文 http://www.taodudu.cc/news/show-4259806.html 相关文章: 芯片的IR drop是什么 神经网络编译器图层面IR ...
- 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 ...
- 最新最全的 Android 开源项目合集(一)
原文链接:https://github.com/opendigg/awesome-github-android-ui 抽屉菜单 MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Si ...
- 最新最全的Android开源项目集合(转)
抽屉菜单 MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Side-Menu.Android ★3865 - 创意边侧菜单 FlowingDrawer ★1744 - 向右滑动流动 ...
- GitHub上受欢迎的Android UI Library
内容 抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 ViewPager 图表(Chart) 菜单(Menu) 浮动菜 ...
- Android开发:开源库集合
开源库大全 目录 抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 ViewPager 图表(Chart) 菜单(Men ...
- 最全面鸿蒙系统开发的相关资料收录
开发 本示例基于 OpenHarmony 下的 JavaScript UI 框架,进行项目目录解读,JS FA.常用和自定义组件.用户交互.JS 动画的实现,通过本示例可以基本了解和学习到 JavaS ...
- 转载-Android 前沿UI
原文地址:https://blog.csdn.net/qq_35224776/article/details/86064712 抽屉菜单 MaterialDrawer ★7337 - 安卓抽屉效果实现 ...
- GitHub 上排名前 100 的 Android 开源库介绍
转自:http://www.codeceo.com/article/github-top-100-android-libs.html 本项目主要对目前 GitHub 上排名前 100 的 Androi ...
- 最全收集整理GitHub上受欢迎的Android UI Library
抽屉菜单 ListView WebView SwitchButton 按钮 点赞按钮 进度条 TabLayout 图标 下拉刷新 ViewPager 图表(Chart) 菜单(Menu) 浮动菜单 对 ...
最新文章
- 10个最常用 Windows Vista运行命令
- 第二次冲刺阶段第四天
- truffle详细使用教程
- Web后台服务开发——数据库查询之引入TypeORM
- BP神经网络 PID控制simulink仿真
- python ipaddress_Python3标准库:ipaddress Internet地址
- 手把手教你在Mac OS下载、编译及导入Android源码
- Python 新式类与经典类
- “Python字符串index()方法应用案例”文末三道思考题答案
- 报错:TargetException, 非静态方法需要一个目标
- html加载js那些事
- 新网域名服务故障的N种可能
- Scala笔记整理(二):Scala数据结构—数组、map与tuple
- android连接airprint打印机,AirPrint:iOS的打印机
- 互联网日报 | 张朝阳宣布2020年搜狐已盈利;永辉超市达成千店目标;腾讯云原生注册用户规模超100万...
- 2022常见软件测试面试题
- 《Cracking the Coding Interview程序员面试金典》----猫狗收容所
- U3D -- 一些知识点和优秀博客收藏
- 商务通传递中文及样式
- Faker的妙用---造数