位置: 编程技术 - 正文

Android自定义对话框实现QQ退出界面(Android自定义对话框)

编辑:rootadmin
效果

推荐整理分享Android自定义对话框实现QQ退出界面(Android自定义对话框),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android 自定义,android自定义属性详解,Android自定义对话框,android 自定义dialog,android 自定义,android 自定义view三个方法,android自定义属性详解,Android自定义对话框style动画效果,内容如对您有帮助,希望把文章链接给更多的朋友!

首先看下qq的效果图,点击菜单按钮后点退出就会出现如图的对话框.

从上图可以看出,该对话框有一个圆角,以及标题,提示信息,两个按钮,按钮颜色是白色,按钮点击后背景会变成灰色,正常状态下对话框的背景色是白色.并且除了点击取消按钮和返回键外,点击屏幕其他区域该对话框不会小时.那么现在我们来实现一下这个对话框.我们实现后的效果如下图所示

实现

首先编写我们的背景,背景默认情况下是白色的,并且有一个圆角,使用shape实现

然后编写我们的布局文件,布局中主要就是两个TextView,两个Button,TextView主要用于显示标题,和提示信息,标题是居中显示的,科可以使用gravity和layout_gravity一起实现,Button就是看到的最下方的按钮,两个按钮宽度比重为1:1,这时候可以用layout_weight实现,然后按钮上方有一条1像素高的灰色的分割线,按钮之间也有1像素款的灰色的分割线,这个可以使用设置View的宽度和高度,再设置背景色即可,而按钮还有点击的效果,这个科一使用selector实现.

我们还要编写selector文件,分为两个,一个是左边的按钮的效果,一个是右边的按钮的效果,为什么要用两个呢,因为这两个按钮有一个角是圆角的,而圆角的位置不同,一个是左下角,一个是右下角,所以我们需要两个这样的文件,这里我们以左边的为例,右边的实现效果一样. 首先编写正常状态下的背景shape

Android自定义对话框实现QQ退出界面(Android自定义对话框)

然后编写选中状态或者说获得焦点时的背景shape

最后编写selector

对于右边按钮的背景,只要将对应的left改成right即可,这里也不贴代码了.

此外,我们还要编写一个默认的style,我们要去除默认Dialog讨厌的标题,完全使用我们自己的布局,以及其他一些设置

这时候,我们新建一个ExitDialog类继承Dialog类,在构造方法里调用我们编写的style,以及对context对象的赋值,重写onCreate方法,设置我们的布局

而我们向让这个Diaglog点击对话框之外的区域不会消失,我们需要设置setCanceledOnTouchOutside(false).然后呢,我们需要设置点击事件,点击确定按钮会退出应用,点击取消当前对话框会消失

使用

实现也很简单,之间将context对象传入构造一个ExitDialog对象,调用show方法显示即可

源码下载

版权声明:本文为博主原创文章,未经博主允许不得转载。

AsyncTask onPostExecute()不执行,与JPush冲突 今天做项目的时候,出现了奇怪的状况,AsyncTask的onPostExecute()方法不执行,上网查找了一番,都没有找到原因,但是网上大多数原因介绍是需要UI主线程

Android基于wheelView的自定义日期选择器(可拓展样式) 基于wheelView的自定义日期选择器项目要求效果图:要求6月星期五这一项作为一个整体可以滑动,7时、分分别作为一个滑动整体。系统自带的DatePicker

sqlite数据库修改及升级 今天是上班的第二天,听说我最近的任务就是改bug,唉,权当学习了,遇到的一些问题都记录下来。sqlite数据库是android中非常常用的数据库,今天帮别

标签: Android自定义对话框

本文链接地址:https://www.jiuchutong.com/biancheng/370992.html 转载请保留说明!

上一篇:Android ViewStub 布局延迟加载

下一篇:AsyncTask onPostExecute()不执行,与JPush冲突

  • 坏账准备转回的条件
  • 境内公司代付境外货款
  • 废旧物资回收经营范围
  • 联营企业和合营企业长期股权投资的方式
  • 分期收款开具发票可以吗
  • 预收装修款并开发票如何转成本?
  • 研究费加计扣除多少
  • 管理费用月末怎么结账
  • 国税一个月没报税罚款多少
  • 跨月冲红的发票怎么做账
  • 建筑业外出经营管理办法
  • 工程已完工又发生了成本怎么处理
  • 付款申请需要附什么依据
  • 股份利润怎么分
  • 公司的公益性捐款合法吗
  • 物业公司收空调费怎么交税
  • 中介收中介费后就不管了
  • windows10专业
  • win7为什么不能安装软件
  • 交易性金融资产的交易费用计入哪里
  • 如何让游戏速度加快
  • linux增加inode
  • PHP:preg_match()的用法_PCRE正则函数
  • 本月未抵扣完的进项税是否转出
  • vue中如何使用weboffice
  • 差额银行承兑汇票
  • 国家差旅费报销最新标准住宿
  • 异地成立分公司的流程和要求
  • 购车人丢失发票怎么查
  • 出租的厂房房产税如何征收
  • coco2017数据集介绍
  • 资产评估增值是什么意思
  • 调频连续波雷达
  • php面向对象优点,缺点
  • 基于javaweb是什么意思
  • webpack配置publicpath
  • bind函数错误
  • 暂估少了冲销时怎么办
  • 商标属于无形资产怎么入账
  • 小型微利企业享所得税优惠
  • 小规模季报所得税不超多少不用交税
  • python 协程 yield
  • mysql数据库高可用方案
  • php判断数据库用户名是否存在
  • 递延所得税负债大白话解释
  • 去年计提的费用今年取得发票 汇算清缴
  • 代发工资入哪个科目
  • 补缴以前年度的税
  • 发票联遗失的证明怎么开
  • 租来设备本身原因致人损害
  • 小规模纳税人可以转为一般纳税人吗?
  • 负债类科目分录
  • 新建厂房哪些费用可以计入
  • 公司怎么变更公司名称
  • 国有企业公司制改造 发行企业债券
  • 微信开发中工具
  • 老毛桃winpe系统对注册表信息进行备份的方法
  • 使用命令行 -devmode
  • 安装 apt
  • 查找注册表命令
  • win7 64位系统使用dos命令快速提高u盘传输速度的技巧
  • node. js教程
  • jQuery Validation Engine验证控件调用外部函数验证的方法
  • node.js安装教程详细
  • linux 搜索文件
  • django定时器
  • anaconda使用指南
  • cocos2dx schedule
  • 如何进行js 的测试
  • jquery校验数字
  • cmd set命令
  • python3.9多线程
  • unity3d 版本
  • javascript面向对象编程
  • python3网络编程
  • 北京朝阳地税搬哪去了
  • 利息发票可以抵扣进项税额吗
  • 预缴增值税最后怎么处理
  • uk怎么添加发票
  • 发票红冲产生费用吗?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设