[android] 手机卫士自定义对话框布局
2023-02-18 15:47:27 时间
手机防盗页面部分
点击手机防盗,进行判断,如果没有设置密码,显示一个设置密码的对话框,如果已经设置密码了,弹出输入密码对话框
密码保存在SharedPreferences中,数据取出进行判断
自定义一个布局文件,dialog_setup_password.xml
根布局宽度不要充满屏幕
内部控件,宽度要小一点留出空间,居中对齐,android:gravity=”center”
两个并排的按钮,确定和取消,线性布局水平朝向
获取AlertDialog.Builder对象,通过new Builder(),参数:上下文对象
调用Builder对象的setView(view)方法,参数:View对象,通过布局填充器填充
调用View.inflate(context,resource,root)方法,把布局文件转换成View对象,上下文,资源,根
调用Builder对象的show()方法
HomeActivity.java
/** * 打开手机防盗的对话框 */ protected void startMobileSec() { String password=sp.getString("password", ""); //设置密码 if(TextUtils.isEmpty(password)){ AlertDialog.Builder builder=new Builder(this); View view=View.inflate(this, R.layout.dialog_setup_password, null); builder.setView(view); builder.show(); }else{ //输入密码 } }
dialog_setup_password.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="300dp" android:layout_height="wrap_content" android:gravity="center_horizontal" android:orientation="vertical" > <TextView android:background="#669933" android:textColor="#fff" android:layout_width="match_parent" android:layout_height="40dp" android:gravity="center" android:text="设置密码" /> <EditText android:layout_width="290dp" android:layout_height="wrap_content" android:hint="请输入密码"/> <EditText android:layout_width="290dp" android:layout_height="wrap_content" android:hint="请确认密码"/> <RelativeLayout android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:gravity="center_horizontal" android:layout_width="200dp" android:layout_height="wrap_content"> <Button android:layout_alignParentLeft="true" android:background="#2aabd2" android:textColor="#fff" android:layout_width="wrap_content" android:layout_height="40dp" android:text="确认"/> <Button android:layout_alignParentRight="true" android:background="#eb9316" android:textColor="#fff" android:layout_width="wrap_content" android:layout_height="40dp" android:text="取消"/> </RelativeLayout> </LinearLayout>
相关文章
- 在 iOS16 中用 SwiftUI 图表定制一个线图
- Android平台GB28181设备接入端如何支持跨网段语音对讲?
- 基于flask和bootstrap-table的通用数据查询
- 爬虫方案 | 爬取大众点评网评论的几个思路(从小程序端)
- 【黄啊码】如何用小程序实现世界杯参赛队伍投票
- 《Android App开发进阶与项目实战》资源下载和内容勘误
- 微信小程序使用阿里巴巴的矢量图标iconfont
- 微信小程序 点击显示隐藏 极简Tab标签 点击添加class样式
- 微信小程序 wx:if 与 hidden区别
- 微信小程序 CSS border-radius元素 overflow:hidden失效问题 iPhone ios 苹果兼容问题
- 微信小程序 自定义 tabBar案例 官方案例迁入无效解决方法 非 tab 页显示 tabBar的问题解决 自定义tabBar与原生tabBar以及自写伪tabbar的区别
- IOS APPStore 上传更新应用版本 软件
- Android - NETD解读
- 【Android自定义控件】不用ScrollView实现上下两屏滑动
- Android实现TextView跑马灯效果
- Android进程间通信(一)- Bundle
- Android进程间通信(二)- Messenger
- 微信小程序实现上拉和下拉加载更多
- 微信小程序 scroll-view 完成上拉加载更多
- 微信小程序实现tabs选项卡