对话框 自定义 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, ...
随机推荐
- 开发人员应关注的20个jQuery网站/博客
http://blog.jobbole.com/1466/ 2. 10个优秀的移动Web应用开发框架 http://blog.jobbole.com/1436/ 3. 介绍jQ Mobile ht ...
- PLSQL 看连接数据库的用户
1. PLSQL选用SYSDBA登录,用户sys,密码xxx 2. 登录后,点tools菜单有sessions子菜单, 3.点击sessions子菜单,可以看到连接用户
- GNU PGM
Linux程序设计入门 - gpm gpm是Linux console下的滑鼠驱动程序,它主要提供文字模式下的滑鼠事件处 理.Linux下文字界面的滑鼠几乎都是用gpm来处理. gpm的文件在gpm原 ...
- Java native(转)
Java不是完美的,Java的不足除了体现在运行速度上要比传统的C++慢许多之外,Java无法直接访问到操作系统底层(如系统硬件等),为此Java使用native方法来扩展Java程序的功能. 可以将 ...
- P2032 「Poetize9」升降梯上
描述 开启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道,映入眼帘的是一条直通塔顶的轨道.一辆停在轨道底部的电梯.和电梯内一杆控制电梯升降的巨大手柄.Nescafe之塔一共有N层,升降 ...
- 【模拟】NCPC 2014 E ceremony
题目链接: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1791 题目大意: N栋大楼(N<=100000),拆除的时候有两种选择的操作,可 ...
- datagridview,textbox,combobox的数据绑定,数据赋值,picturebox的用法
一:datagridview数据绑定 二:textbox的数据绑定(datetimepicker) 总结: 最好还是写成双向绑定那种,不要再写出发事件了,只要在给textbox赋值就能重新绑定了,不然 ...
- 开源库CImg 数据格式存储之二(RGB 顺序)
在上一篇博客中已经初步说明了GDI和CImg数据的存储格式感谢博友 Imageshop 评论说明 CImg的说明文档中已有详细说明(详见上篇博客说明) CImg的数据格式确实是RRRGGGBBB顺序存 ...
- NOI题库1159 Maze
1159:Maze 总时间限制: 2000ms 内存限制: 65536kB 描述 Acm, a treasure-explorer, is exploring again. This time he ...
- HDU4099 Revenge of Fibonacci(高精度+Trie)
Revenge of Fibonacci Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 204800/204800 K (Java/ ...



