对话框 自定义 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, ...
随机推荐
- D题 - A+B for Input-Output Practice (III)
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Description Your ...
- linux c数据库备份第一版
使用linuxC实现的mysql数据库备份目标:通过alarm信号定时备份数据库备注:目前是第一个版,本身不能定时备份可以结合linux自动化实现定时备份.运行平台:Linux或类unix测试平台:u ...
- spring mvc ModelAndView 404的原因
在使用ModelAndView时不要导入 import org.springframework.web.portlet.ModelAndView; 而要导入以下这个包 import org.sprin ...
- ipython与python的区别
http://mba.shengwushibie.com/itbook/BookChapter.asp?id=8745 http://www.cnblogs.com/yangze/archive/20 ...
- 阿里云的esc
云服务器ecs作用如下:1.完全管理权限:对云服务器的操作系统有完全控制权,用户可以通过连接管理终端自助解决系统问题,进行各项操作:2.快照备份与恢复:对云服务器的磁盘数据生成快照,用户可使用快照回滚 ...
- 运用MyEclipse插件(link方式注意点)
Windows7 中 MyEclipse 安装位置下,有以下两个目录: MyEclipse 10 Common 注意点一 Common 下的子目录是 plugins 和 features : 而在 M ...
- 通过GetManifestResourceStream加载文件出现错误提示“null值”对于“stream”无效[转]
本文解决了我的问题,收藏一下. 原文地址:http://blog.sina.com.cn/s/blog_a67799f601010atz.html 在做Mobile开发时,需要引入图片,用到了这个方法 ...
- An Attempt to Understand Boosting Algorithm(s)
An Attempt to Understand Boosting Algorithm(s) WELCOME! Here you will find daily news and tutorials ...
- 7.DropDownList的绑定
ListView中是无法像TextBox等控件那样将DropDownList的选中值绑定到数据字段的,必须编程处理.如例子:人员的性别(男,女,保密),三个值固定写在DropDownList中. 在显 ...
- OpenSSH远程拒绝服务漏洞
漏洞版本: OpenSSH 漏洞描述: Bugtraq ID:61286 OpenSSH是一种开放源码的SSH协议的实现 OpenSSH存在一个安全漏洞,允许远程攻击者利用漏洞提交恶意请求,使应用程序 ...