Dialog自定义布局
16lz
2021-01-26
因为有很多时候需要弹出一个Dialog,但系统自带的Dialog太丑了,于是写一个自定义Dialog布局的模板。
layout布局
<?xml version="1.0" encoding="utf-8"?>
布局稍微改改就能做成点击右上取消的样子。在
标签里、
外边加上一个控件,设置android:layout_gravity="top|right"
FrameLayout的背景
<?xml version="1.0" encoding="utf-8"?>
Dialog的样式
<?xml version="1.0" encoding="utf-8"?>
创建Dialog
int mWindowWidth, mWindowHeight;Dialog dialog = new Dialog(this, R.style.simpleDialogStyle);View view = LayoutInflater.from(this).inflate(R.layout.simple_dialog, null);DisplayMetrics displayMetrics = this.getResources().getDisplayMetrics();mWindowWidth = displayMetrics.widthPixels;mWindowHeight = displayMetrics.heightPixels;dialog.setContentView(view, new MarginLayoutParams(mWindowWidth, MarginLayoutParams.MATCH_PARENT));dialog.show();
宽度设置为手机屏幕的宽度,高度为控件高度之和,因为没有父layout,所以没有需要自定义View,重写onDraw()
方法,才能使用MarginLayoutParams.MATCH_PARENT
属性
更多相关文章
- android如何为listview的每项中edittext控件添加textwacher
- Android(安卓)UI 使用HTML布局(直接打开服务器网页)
- [Android(安卓)界面] setContentView和inflate区别
- 从Android到IOS,IOS应用生命周期函数
- android学习--Android五大布局对象---FrameLayout,LinearLayout,
- Android组件学习笔记(自定义设计View,以及布局直接引入的快捷方式)
- Activity作为dialog展示,如何添加自定义圆角背景
- 如何在Android5.1系统上实现RecyclerView高度自适应
- Android对ListView控件增删改查