文档章节

showSetPwdDialog--自定义对话框

Jusenr
 Jusenr
发布于 2016/05/17 00:23
字数 622
阅读 1
收藏 0
点赞 2
评论 0

样式:

      

 

布局:

layout

  dialog_set_pwd.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent"
 5     android:orientation="vertical" >
 6 
 7     <LinearLayout
 8         android:layout_width="match_parent"
 9         android:layout_height="wrap_content"
10         android:background="#EFEFEF"
11         android:orientation="horizontal"
12         android:padding="10dp" >
13 
14         <ImageView
15             android:layout_width="wrap_content"
16             android:layout_height="wrap_content"
17             android:src="@drawable/dialog_title_default_icon" />
18 
19         <TextView
20             android:id="@+id/textView1"
21             android:layout_width="wrap_content"
22             android:layout_height="wrap_content"
23             android:layout_marginLeft="5dp"
24             android:text="设置密码"
25             android:textColor="@color/black"
26             android:textSize="18sp" />
27     </LinearLayout>
28 
29     <EditText
30         android:id="@+id/et_pwd"
31         android:layout_width="match_parent"
32         android:layout_height="wrap_content"
33         android:layout_margin="5dp"
34         android:hint="请输入密码"
35         android:inputType="textPassword" >
36     </EditText>
37 
38     <EditText
39         android:id="@+id/et_pwd_confirm"
40         android:layout_width="match_parent"
41         android:layout_height="wrap_content"
42         android:layout_margin="5dp"
43         android:hint="请再次输入密码"
44         android:inputType="textPassword" />
45 
46     <LinearLayout
47         android:layout_width="match_parent"
48         android:layout_height="wrap_content"
49         android:orientation="horizontal"
50         android:padding="10dp" >
51 
52         <Button
53             android:id="@+id/btn_ok"
54             android:layout_width="0dp"
55             android:layout_height="wrap_content"
56             android:layout_weight="1"
57             android:background="@drawable/btn_blue_selector"
58             android:text="确定"
59             android:layout_marginRight="5dp"
60             android:textColor="@color/white" />
61 
62         <Button
63             android:id="@+id/btn_cancel"
64             android:layout_width="0dp"
65             android:layout_height="wrap_content"
66             android:layout_weight="1"
67             android:background="@drawable/btn_white_selector"
68             android:text="取消"
69             android:textColor="@color/black" />
70     </LinearLayout>
71 
72 </LinearLayout>

 

状态选择器:

drawable

  btn_blue_selector.xml

1 <?xml version="1.0" encoding="utf-8"?>
2 <selector xmlns:android="http://schemas.android.com/apk/res/android">
3 
4     <item android:drawable="@drawable/dg_btn_confirm_select" android:state_pressed="true"></item>
5     <item android:drawable="@drawable/dg_btn_confirm_normal"></item>
6 
7 </selector>

  btn_white_selector.xml

1 <?xml version="1.0" encoding="utf-8"?>
2 <selector xmlns:android="http://schemas.android.com/apk/res/android">
3 
4     <item android:drawable="@drawable/dg_button_cancel_select" android:state_pressed="true"></item>
5     <item android:drawable="@drawable/dg_button_cancel_normal"></item>
6 
7 </selector>

引用值

values

  colors.xml

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <resources>
 3 
 4     <color name="black">#000</color>
 5     <color name="gray">#a000</color>
 6     <color name="white">#fff</color>
 7     <color name="red">#f00</color>
 8     <color name="shape_setting_normal">#B1D7EE</color>
 9     <color name="shape_setting_pressed">#3C9AD4</color>
10     <color name="blue">#459FD7</color>
11     <color name="light_green">#80f0</color>
12 
13 </resources>

 

代码:

 1     private void showSetPwdDialog() {
 2         AlertDialog.Builder builder = new AlertDialog.Builder(this);
 3         View view = View.inflate(this, R.layout.dialog_set_pwd, null);
 4 
 5         Button btnOk = (Button) view.findViewById(R.id.btn_ok);
 6         Button btnCancel = (Button) view.findViewById(R.id.btn_cancel);
 7 
 8         final EditText etPwd = (EditText) view.findViewById(R.id.et_pwd);
 9         final EditText etPwdConfirm = (EditText) view
10                 .findViewById(R.id.et_pwd_confirm);
11 
12         builder.setView(view);//将当前布局对象设置给dialog
13         final AlertDialog dialog = builder.create();
14 
15         btnOk.setOnClickListener(new OnClickListener() {
16 
17             @Override
18             public void onClick(View v) {
19                 String pwd = etPwd.getText().toString().trim();
20                 String pwdConfirm = etPwdConfirm.getText().toString().trim();
21 
22                 if (TextUtils.isEmpty(pwd) || TextUtils.isEmpty(pwdConfirm)) {
23                     ToastUtils.showToast(getApplicationContext(), "输入内容不能为空!");
24                 } else {
25                     if (pwd.equals(pwdConfirm)) {
26                         System.out.println("登录成功!");
27 
28                         //将密码保存在本地sp
29                         PrefUtils.putString(getApplicationContext(),
30                                 GlobalConstants.PREF_PASSWORD,
31                                 MD5Utils.getMd5(pwd));
32 
33                         dialog.dismiss();
34 
35                         enterLostAndFindPage();
36                     } else {
37                         ToastUtils.showToast(getApplicationContext(),
38                                 "两次密码不一致!");
39                     }
40 
41                 }
42             }
43         });
44 
45         btnCancel.setOnClickListener(new OnClickListener() {
46 
47             @Override
48             public void onClick(View v) {
49                 dialog.dismiss();
50             }
51         });
52 
53         dialog.show();
54     }

 

© 著作权归作者所有

共有 人打赏支持
Jusenr
粉丝 0
博文 20
码字总数 10876
作品 0
西安
Android工程师
error loading /system/media/audio/ui/Effect_Tick.ogg错误

只是想要弹出一个dialog,根本不涉及媒体,音频之类的,下面是错误日志, 重新创建了avd,还是同样的错误 主要代码: /** 点击手机防盗弹出对话框 */ private void showDialog() { //获取Saf...

只怪時間沖淡了緣分 ⋅ 2016/08/18 ⋅ 1

Android第四十一天(2)

1、对话框的分类 <1>AlertDialog 警告对话框(提示对话框) (1)父类:android.app.Dialog (2)创建AlertDialog对话框的步骤 a.创建AlertDialog.Builder对象,该对象能创建AlertDialog; ...

黄晓磊 ⋅ 2016/07/25 ⋅ 0

android开发个人库/cocodialog

##CocoDialog CocoDialog是一个灵活的自定义对话框,支持对话框的弹出和退出动画,同时内置了多种常用的对话框,同时也支持样式的对话框。 ##Gradle dependencies{compile 'com.cocolove2.lib...

android开发个人库 ⋅ 2017/09/14 ⋅ 0

自定义 Android 对话框 (AlertDialog) 的样式

Android 提供了 AlertDialog 类可通过其内部类 Builder 轻松创建对话框窗口,但是没法对这个对话框窗口进行定制,为了修改 AlertDialog 窗口显示的外观,解决的办法就是创建一个指定的 Aler...

红薯 ⋅ 2012/01/03 ⋅ 6

eclipse 导入自定义jar包

第二种方式:用户Jar包式 右键项目属性,选择Property,在弹出的对话框左侧列表中选择Java Build Path,弹出如上图所示的对话框,这里选择"Add Library",弹出如下图所示对话框,选择"User L...

lilugoodjob ⋅ 2014/10/13 ⋅ 0

Android常用对话框大全——Dialog

版权声明:本文出自阿钟的博客,转载请注明出处:http://blog.csdn.net/a_zhon 唉!最近一直忙碌着写项目以至于都没有空出点时间来总结近期的学习,记录学习到的东西…现在正好有时间了就该好...

jdfkldjlkjdl ⋅ 2017/11/29 ⋅ 0

Android官方推荐使用DialogFragment替换AlertDialog

DialogFragment是在Android3.0(API level 11)中引入的,它代替了已经不建议使用的AlertDialog。 DialogFragment高效地封装和管理对话框的生命周期,并让Fragment和它包含的对话框的状态保持...

u010687392 ⋅ 2015/05/25 ⋅ 0

自定义提醒对话框--FVCustomAlertView-Swift

FVCustomAlertView 的Swift版。FVCustomAlertView是自定义提醒对话框。可以自定义加载、完成、错误、警告等提醒对话框。可以对提醒对话框进一步深度定制。...

红薯 ⋅ 2015/02/05 ⋅ 0

Android软件开发之盘点所有Dialog对话框大合集(一)

对话框大合集 雨松MOMO原创文章如转载,请注明:转载自雨松MOMO的博客原文地址:http://blog.csdn.net/xys289187120/article/details/6601613 雨松MOMO带大家盘点Android 中的对话框 今天我用...

晨曦之光 ⋅ 2012/03/07 ⋅ 0

Android软件开发之盘点所有Dialog对话框大合集(一)

对话框大合集 雨松MOMO原创文章如转载,请注明:转载自雨松MOMO的博客原文地址:http://blog.csdn.net/xys289187120/article/details/6601613 雨松MOMO带大家盘点Android 中的对话框 今天我用...

彭博 ⋅ 2012/03/09 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

JavaScript零基础入门——(十)JavaScript的DOM基础

JavaScript零基础入门——(十)JavaScript的DOM基础 欢迎大家回到我们的JavaScript零基础入门,上一节课,我们了解了JavaScript中的函数,这一节课,我们来了解一下JavaScript的DOM。 第一节...

JandenMa ⋅ 24分钟前 ⋅ 0

Spring mvc DispatchServlet 实现原理

在Spring中, ContextLoaderListener只是辅助类,在web 容器启动的时候查找并创建WebApplicationContext对象,通过该对象进行加载spring的配置文件。而真正的逻辑实现其实是在DispatcherSer...

轨迹_ ⋅ 36分钟前 ⋅ 0

Weex起步

本教程假设你已经在你的本地环境安装了node 其实weex起步教程在 https://github.com/lilugirl/incubator-weex 项目说明文件中都已经有了,但为了有些同学看到英文秒变文盲,所以这里我重新写...

lilugirl ⋅ 43分钟前 ⋅ 0

Jenkins实践1 之安装

1 下载 http://mirrors.jenkins.io/war/latest/jenkins.war 2 启动 java -jar jenkins.war 前提:安装jdk并配置环境变量 启动结果节选: ************************************************......

晨猫 ⋅ 50分钟前 ⋅ 0

组合数学 1-2000 中,能被6或10整除的数的个数

1--2000 中,能被6或10整除的数的个数 利用集合的性质 能被6整除的个数 2000/6 = 333 能被10整除的个数 2000/10 = 200 能被6和10整除的个数 2000/30 = 66 能被6或10整除的个数 333+200-66 =...

阿豪boy ⋅ 59分钟前 ⋅ 0

一篇文章学懂Shell脚本

Shell脚本,就是利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能,也可以说Shell脚本就是一系列命令的集合。 Shell可以直接使用在win/Unix/Linux上面,并且可以调用...

Jake_xun ⋅ 今天 ⋅ 0

大数据工程师需要精通算法吗,要达到一个什么程度呢?

机器学习是人工智能的一个重要分支,而机器学习下最重要的就是算法,本文讲述归纳了入门级的几个机器学习算法,加大数据学习群:716581014一起加入AI技术大本营。 1、监督学习算法 这个算法由...

董黎明 ⋅ 今天 ⋅ 0

Kylin 对维度表的的要求

1.要具有数据一致性,主键值必须是唯一的;Kylin 会进行检查,如果有两行的主键值相同则会报错。 2.维度表越小越好,因为 Kylin 会将维度表加载到内存中供查询;过大的表不适合作为维度表,默...

无精疯 ⋅ 今天 ⋅ 0

58到家数据库30条军规解读

军规适用场景:并发量大、数据量大的互联网业务 军规:介绍内容 解读:讲解原因,解读比军规更重要 一、基础规范 (1)必须使用InnoDB存储引擎 解读:支持事务、行级锁、并发性能更好、CPU及...

kim_o ⋅ 今天 ⋅ 0

代码注释中顺序更改 文件读写换行

`package ssh; import com.xxx.common.log.LogFactory; import com.xxx.common.log.LoggerUtil; import org.apache.commons.lang3.StringUtils; import java.io.*; public class DirErgodic ......

林伟琨 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部