对话框 自定义 IOS风格 包青天
activity
private void showDialog1() {message = "您输入的邮箱后缀不是公司邮箱地址\n将导致您的借款审核不通过,请重新\n填写。";DialogBQT diaolog = new DialogBQT(this);diaolog.setTitleAndMessageAndIcon(null, message, R.drawable.icon_email);diaolog.setOneButtonText("我知道了", -1);diaolog.show();}private void showDialog2() {message = "您已申请了我们公司的aaa,\n正在处理中,请勿重复申请。";DialogBQT diaolog = new DialogBQT(this) {@Overridepublic void onSureClick(View v) {super.onSureClick(v);startActivity(new Intent(A_Elite_Loan.this, Activity_LoanList.class));}};diaolog.setTitleAndMessageAndIcon(null, message, R.drawable.icon_email);diaolog.setButtonText("查看我的借款", "返回", -1, 0xff999999);diaolog.show();}private void showDialog3() {message = "您输入的邮箱后缀不是公司邮箱地址\n将导致您的借款审核不通过,请重新\n填写。";DialogBQT diaolog = new DialogBQT(this);diaolog.setTitleAndMessageAndIcon("提示", message, R.drawable.icon_email);diaolog.setMiddleButtonText("中间按钮",-1);diaolog.show();}
dialog
public class DialogBQT extends Dialog implements OnClickListener {private TextView title, message;//标题和消息内容private ImageView iv_icon;//图标private Button cancel, middle, confirm;//3个按钮private LinearLayout line_left, line_right;//2条线/*** 仿iOS风格的AlertView*/public DialogBQT(Context context) {this(context, R.style.alertviewstyle);}public DialogBQT(Context context, int theme) {super(context, theme);initView();}private void initView() {setContentView(R.layout.dialog_withicon);title = (TextView) findViewById(R.id.title);message = (TextView) findViewById(R.id.message);iv_icon = (ImageView) findViewById(R.id.iv_icon);cancel = (Button) findViewById(R.id.cancel);middle = (Button) findViewById(R.id.middle);confirm = (Button) findViewById(R.id.confirm);line_left = (LinearLayout) findViewById(R.id.line_left);line_right = (LinearLayout) findViewById(R.id.line_right);cancel.setOnClickListener(this);middle.setOnClickListener(this);confirm.setOnClickListener(this);}//***************************************************常用设置***************************************/*** 标题、消息内容、图标,为空时不显示,为-1时不显示*/public void setTitleAndMessageAndIcon(String titleString, String messageString, int res) {if (titleString == null) title.setVisibility(View.GONE);else title.setText(titleString);if (messageString == null) message.setVisibility(View.GONE);else message.setText(messageString);if (res == -1) iv_icon.setVisibility(View.GONE);else iv_icon.setImageResource(res);}/*** 显示三两个按钮时,确认(右)和取消(左)文本及颜色,为-1时不设置*/public void setButtonText(String confirmString, String cancelString, int confirmColor, int cancelColor) {confirm.setText(confirmString);cancel.setText(cancelString);if (confirmColor != -1) confirm.setTextColor(confirmColor);if (cancelColor != -1) cancel.setTextColor(cancelColor);}/*** 显示三个按钮时,把中间的按钮显示出来*/public void setMiddleButtonText(String text, int color) {middle.setVisibility(View.VISIBLE);line_right.setVisibility(View.VISIBLE);middle.setText(text);if (color != -1) middle.setTextColor(color);}/*** 显示一个按钮时*/public void setOneButtonText(String text, int color) {cancel.setVisibility(View.GONE);line_left.setVisibility(View.GONE);confirm.setText(text);if (color != -1) confirm.setTextColor(color);confirm.setBackgroundResource(R.drawable.single_btn_select);}//***************************************************三个按钮的点击事件***************************************@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.confirm:dismiss();onSureClick(v);break;case R.id.cancel:dismiss();onCancleClick(v);break;case R.id.middle:dismiss();onMiddleClick(v);break;default:break;}}private void onMiddleClick(View v) {}public void onSureClick(View v) {}public void onCancleClick(View v) {}//***************************************************获取控件***************************************public TextView getTitle() {return title;}public TextView getMessage() {return message;}public ImageView getIv_icon() {return iv_icon;}public Button getCancel() {return cancel;}public Button getMiddle() {return middle;}public Button getConfirm() {return confirm;}public LinearLayout getLine_left() {return line_left;}public LinearLayout getLine_right() {return line_right;}}
layout
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/layout"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_gravity="center"android:background="@drawable/dialog_bg"android:minWidth="300dp"android:orientation="vertical"android:paddingTop="30dp"><TextViewandroid:id="@+id/title"android:layout_width="match_parent"android:layout_height="wrap_content"android:gravity="center"android:text="标题"android:textColor="@android:color/black"android:textSize="20sp"/><ImageViewandroid:id="@+id/iv_icon"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:src="@drawable/icon_email"/><TextViewandroid:id="@+id/message"android:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center"android:padding="20dp"android:text="内容"android:textColor="@android:color/black"android:textSize="@dimen/main_text_default"/><LinearLayoutandroid:layout_width="match_parent"android:layout_height="1dip"android:layout_marginTop="10dp"android:background="#D1D1D1"/><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"><Buttonandroid:id="@+id/cancel"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_weight="1"android:background="@drawable/left_btn_select"android:paddingBottom="15dp"android:paddingTop="15dp"android:text="@string/cancel"android:textColor="@color/btntextcolor"android:textSize="@dimen/main_text_default"/><LinearLayoutandroid:id="@+id/line_left"android:layout_width="1dp"android:layout_height="match_parent"android:background="#D1D1D1"android:orientation="horizontal"/><Buttonandroid:id="@+id/middle"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_weight="1"android:background="@drawable/left_btn_select"android:paddingBottom="15dp"android:paddingTop="15dp"android:text="@string/dismiss"android:textColor="@color/btntextcolor"android:textSize="@dimen/main_text_default"android:visibility="gone"/><LinearLayoutandroid:id="@+id/line_right"android:layout_width="1dp"android:layout_height="match_parent"android:background="#D1D1D1"android:orientation="horizontal"android:visibility="gone"/><Buttonandroid:id="@+id/confirm"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_weight="1"android:background="@drawable/right_btn_select"android:paddingBottom="15dp"android:paddingTop="15dp"android:text="@string/confirm"android:textColor="@color/btntextcolor"android:textSize="@dimen/main_text_default"/></LinearLayout></LinearLayout>
background
样式<style name="alertviewstyle" parent="@android:style/Theme.Dialog"><item name="android:windowFrame">@null</item><item name="android:windowIsFloating">true</item><item name="android:windowIsTranslucent">false</item><item name="android:windowNoTitle">true</item><item name="android:windowBackground">@drawable/dialog_background</item><item name="android:backgroundDimEnabled">true</item></style>根布局背景<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"><item><shape><solid android:color="#fff" /><corners android:radius="15px" /></shape></item></selector>按钮背景_左边(注意,不同位置的按钮背景是不一样的)<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@drawable/check_left_btn" android:state_pressed="true"/><item android:drawable="@drawable/left_btn" /></selector>按钮背景_check_left_btn<?xml version="1.0" encoding="UTF-8"?><shapexmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle"><!-- 填充的颜色 --><solid android:color="#EAEAEA" /><!-- 设置按钮的四个角为弧形 --><!-- android:radius 弧形的半径 --><corners android:bottomLeftRadius="15px" /></shape>按钮背景_left_btn<?xml version="1.0" encoding="UTF-8"?><shapexmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle"><!-- 填充的颜色 --><solid android:color="#FFFFFF" /><!-- 设置按钮的四个角为弧形 --><!-- android:radius 弧形的半径 --><corners android:bottomLeftRadius="15px" /></shape>
对话框 自定义 IOS风格 包青天的更多相关文章
- JS实现IOS风格对话框 jquery / zepto
Alert alert("这个是一个alert弹窗"); Alert 自定义参数 alert({ content: "自定义alert弹窗", btnText: ...
- 使用Quasar设计Material和IOS风格的响应式网站
使用Quasar设计Material和IOS风格的响应式网站 栏目: CSS · 发布时间: 8个月前 来源: segmentfault.com 本文转载自:https://segmentfaul ...
- 构建 iOS 风格移动 Web 应用程序的8款开发框架
使用 HTML5,CSS3 和 JavaScript 开发移动应用经过实践证明是一种可行的方式.这里收录了几款 iOS 风格的手机应用程序开发框架,帮助您使用擅长的 Web 技术来开发移动应用程序.这 ...
- 使用 iosOverlay.js 创建 iOS 风格的提示和通知
iosOverlay.js 用于在 Web 项目中实现 iOS 风格的通知和提示效果.为了防止图标加载的时候闪烁,你需要预加载的图像资源.不兼容 CSS 动画的浏览器需要 jQuery 支持.浏览器兼 ...
- PhotoSwipe - 移动开发必备的 iOS 风格相册
PhotoSwipe 是一个专门针对移动设备的图像画廊,它的灵感来自 iOS 的图片浏览器和谷歌移动端图像. PhotoSwipe 提供您的访客熟悉和直观的界面,使他们能够与您的移动网站上的图像进行交 ...
- 使用jQuery开发iOS风格的页面导航菜单
在线演示1 本地下载 申请达人,去除赞助商链接 iOS风格的操作系统和导航方式现在越来越流行,在今天的jQuery教程中,我们将介绍如何生成一个iphone风格的菜单导航. HTML代码 我们 ...
- Windows 8实例教程系列 - 自定义应用风格
原文:Windows 8实例教程系列 - 自定义应用风格 在Windows 8 XAML实例教程中,曾经提及过应用风格设计方法以及如何创建可复用样式代码.本篇将深入讨论如何创建自定义Windows8应 ...
- Android系统对话框——自定义关闭
Android系统对话框--自定义关闭 Dialog是我们在项目中经常用到的,5.x以后的Dialog也很好看,很安卓风,Android也给我们提供了新的包,低版本可以显示一样的效果.我们在使用的导入 ...
- ToastCustom【自定义显示风格的Toast】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 基于系统Toast的自定义显示风格的Toast. 效果图 代码分析 ToastCustom类基于系统Toast,不是继承Toast, ...
随机推荐
- Android 即时语音聊天工具 开发
使用融云SDK 1. 功能需求分析 1.1 核心功能需求: * 即时通讯 * 文字聊天 * 语音聊天 1.2 辅助功能需求: * 注册.登录 * 好友添加功能 * 好友关系管理 2. 融云即时通讯平台 ...
- smali文件语法参考
Dalvik opcodes Author: Gabor Paller Vx values in the table denote a Dalvik register. Depending on th ...
- uboot总结:uboot配置和启动过程3(config.mk分析)
说明:文件位置:在uboot的目录下,文件名为:config.mk.是一个makefile文件,以后会被主Makefile调用. 它的主要作用的是: (1)具体的设置交叉编译工具链接(主Makefil ...
- Unity问答——NGUI怎么使用按键模拟鼠标点击?
这篇博客源自我在泰课在线的回答.链接:http://www.taikr.com/group/1/thread/248 问:NGUI怎么模拟用代码模拟控制点击 答: 1. 这个问题问得好.因为在使用按键 ...
- 转 一些shell经验
http://www.cnblogs.com/xublogs/archive/2010/03/16/2292254.html http://www.cnblogs.com/stephen-liu74/ ...
- 以Facebook为案例剖析科技公司应有的工具文化
http://www.36kr.com/p/146507.html 编者按:本文由 @王淮Harry哥 撰写,摘自他即将出版的新书.王淮是 Facebook 早期员工,中国藉第二位工程师第一位研发经理 ...
- Delphi 的各种错误信息(中英文)
******************************* * 编 译 错 误 信 息 * ******************************* ';' not allowed befo ...
- Linux Shell编程(1)——shell编程简介
Shell是一个命令解释器.它不仅是操作系统内核与用户之间的绝缘层,同时也是一种功能相当强大的编程语言.一个Shell程序,通常称为脚本,它是一个由系统调用,命令工具,软件包和已编译的二进制包&quo ...
- Qt入门(11)——Qt插件
Qt提供了一个简单地插件接口,可以轻松地生成作为独立组件的定制数据库驱动.图象格式.文本编解码器(text codec).风格(style)和部件.警告:Qt 3.0.5对插件的一些方面做了改变,具体 ...
- HDU 4185 Oil Skimming
题目大意:在一个N*N的矩阵里寻找最多有多少个“##”(横着竖着都行). 题目分析:重新构图,直接以相邻的两个油井算中间算以条边,然后进行匹配,看看两两之间最多能匹配多少对. #include ...



