文档章节

showSetPwdDialog--自定义对话框

Jusenr
 Jusenr
发布于 2016/05/17 00:23
字数 622
阅读 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
1K
1
android开发个人库/cocodialog

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

android开发个人库
2017/09/14
0
0
Android第四十一天(2)

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

黄晓磊
2016/07/25
3
0
自定义 Android 对话框 (AlertDialog) 的样式

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

红薯
2012/01/03
45.8K
6
eclipse 导入自定义jar包

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

lilugoodjob
07/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周四乱弹 —— 毒蛇当辣条

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ 达尔文:分享花澤香菜/前野智昭/小野大輔/井上喜久子的单曲《ミッション! 健?康?第?イチ》 《ミッション! 健?康?第?イチ》- 花澤香菜/前野智...

小小编辑
43分钟前
4
0
java -jar运行内存设置

java -Xms64m #JVM启动时的初始堆大小 -Xmx128m #最大堆大小 -Xmn64m #年轻代的大小,其余的空间是老年代 -XX:MaxMetaspaceSize=128m # -XX:CompressedClassSpaceSize=6...

李玉长
53分钟前
1
0
Spring | 手把手教你SSM最优雅的整合方式

HEY 本节主要内容为:基于Spring从0到1搭建一个web工程,适合初学者,Java初级开发者。欢迎与我交流。 MODULE 新建一个Maven工程。 不论你是什么工具,选这个就可以了,然后next,直至finis...

冯文议
今天
1
0
RxJS的另外四种实现方式(四)——性能最高的库(续)

接上一篇RxJS的另外四种实现方式(三)——性能最高的库 上一篇文章我展示了这个最高性能库的实现方法。下面我介绍一下这个性能提升的秘密。 首先,为了弄清楚Most库究竟为何如此快,我必须借...

一个灰
今天
1
0
麒麟AI首席科学家现世

8月31日,华为发布了新一代顶级人工智能手机芯片麒麟980,成为全球首款7nm工艺手机芯片,AI方面也实现飞跃,支持人脸识别、物体识别、物体检测、图像分割、智能翻译等。 虽然如今人人都在热议...

问题终结者
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部