Android开发之Dialog\popupindow\windowManager的区别及自定义方法详解

本文介绍了Android开发中三种常用的弹窗方式:Dialog、PopupWindow和通过WindowManager添加自定义View。Dialog是非阻塞式弹窗,PopupWindow弹出时会阻塞程序执行,而WindowManager则是底层实现原理。文中详细讲解了它们的区别以及自定义Dialog和PopupWindow的方法,并提供了相关代码示例。
摘要由CSDN通过智能技术生成

在Android开发中,有三种可以弹出的窗体可以使用,一种是Dialog,一种是popupindow,还有一种是最原始的方法,我估计也是dialog和popupwindow的实现原理,用windowManger添加自定义view窗体。


一、Dialog和popupwindow的区别

这两者都是弹窗,但有本质上的区别。Dialog是非阻塞式弹窗,Dialog弹出来后,后台还在做其他事情。而当Popupwindow弹出的时候,程序阻塞,后台停止运动,只有当我们调用了dismiss方法之后,程序才会继续向下执行。



二、Dialog和popupwindow的自定义方法

1、Dialog的自定义方法:

Dialog的自定义方法有几种,可以继承Dialog类然后setContentView();这里主要讲解运用AlertDialog.Builder来创建自定义对话框的方法。

直接上代码:

// 新建一个buidler
		AlertDialog.Builder builder = new Builder(this);
		// 填充自定义view
		View view = View.inflate(this, R.layout.freedom, null);
		// 创建dialog
		final AlertDialog dialog = builder.create();
		// 设定自定义View,后面跟的值必须为0
		dialog.setView(view, 0, 0, 0, 0);
		// 查找组件
		confirm = (Button) view.findViewById(R
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值