自定义一个类继承自Dialog类,然后在构造方法中,定义这个dialog的布局和一些初始化信息。
01 |
public class MenuDialog extends Dialog { |
03 |
public MenuDialog(Context context, boolean cancelable, |
04 |
OnCancelListener cancelListener) { |
05 |
super(context, cancelable, cancelListener); |
06 |
// TODO Auto-generated constructor stub |
09 |
public MenuDialog(Context context, int theme) { |
10 |
super(context, theme); |
11 |
// TODO Auto-generated constructor stub |
14 |
public MenuDialog(Context context) { |
17 |
super(context, R.style.Theme_Transparent); |
21 |
setContentView(R.layout.menu_dialog); |
22 |
//setTitle("Custom Dialog"); |
24 |
//单击dialog之外的地方,可以dismiss掉dialog。 |
25 |
setCanceledOnTouchOutside(true); |
29 |
// LayoutParams a = getWindow().getAttributes(); |
30 |
// getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); |
31 |
// a.gravity = Gravity.TOP; |
32 |
// a.dimAmount = 1.0f; // 添加背景遮盖 |
33 |
// getWindow().setAttributes(a); |
35 |
//在下面这种情况下,后台的activity不会被遮盖,也就是只会遮盖此dialog大小的部分 |
36 |
LayoutParams a = getWindow().getAttributes(); |
37 |
a.gravity = Gravity.TOP; |
38 |
a.dimAmount = 0.0f; // 去背景遮盖 |
39 |
getWindow().setAttributes(a); |
然后再需要此dialog的地方,实例化这个dialog就行了。
另附此对话框的主题:
01 |
<style name="Theme.Transparent" parent="android:Theme"> |
03 |
<item name="android:windowBackground">@drawable/dialog_box_2</item>//此对话框的背景 |
04 |
<item name="android:windowIsTranslucent">true</item>//对话框是否透明 |
05 |
<item name="android:windowContentOverlay">@null</item>//对话框是否有遮盖 |
06 |
<item name="android:windowNoTitle">true</item>//对话框无标题 |
07 |
<item name="android:windowIsFloating">true</item>//对话框是否浮动 |
08 |
<item name="android:backgroundDimEnabled">false</item> |
文章出处:http://blog.csdn.net/ooo4561213/article/details/6655748
- [转]【C#】分享一个弹出浮动层,像右键菜单那样召即来挥则去
适用于:.net2.0+ Winform项目 背景: 有时候我们需要开一个简单的窗口来做一些事,例如输入一些东西.点选一个item之类的,可能像这样: 完了返回原窗体并获取刚刚的输入,这样做并没有什么 ...
- Android浮动窗口的实现
1.浮动窗口的实现原理 看到上图的那个小Android图标了吧,它不会被其他组建遮挡,也可以响应用户的点击和拖动事件,它的显示和消失由WindowManager直接管理,它就是Android浮动窗口. ...
- 〖Android〗OK6410a的Android HAL层代码编写笔记
一.编写LED灯的Linux驱动程序代码 之所以使用存在HAL层,是为了保护对硬件驱动过程的逻辑与原理: 所以,残留在Linux驱动层的代码,只保留了基本的读写操作,而不含有关键的逻辑思维: 1. l ...
- 【Win 10应用开发】自定义浮动层——Flyout
最近几天总是下雨,真是“何处秋窗无雨声”,也“不知风雨几时休”. 好,进入正题. 弹出层有三种. 第一种是ContentDialog,即内容对话框,它其实类似于模态对话框,弹出后会覆盖整个窗口区域,并 ...
- Android 各层调用的方式
所有的android的app启动都有三种深入启动的方式: ①app——Runtime Service——Lib 这种启动方式是: Ⅰapp程序中启动application framework 层中Ru ...
- js div浮动层拖拽效果代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- CSS中应用position的absolute和relative的属性制作浮动层
我的浮动层结构大概如下: <div id="father"> <div id="son"> </div> </div& ...
- android浮动搜索框
android浮动搜索框的配置比较繁琐,需要配置好xml文件才能实现onSearchRequest()方法. 1.配置搜索的XML配置文件,新建文件searchable.xml,保存在res/xml ...
- JS随鼠标坐标移动,显示浮动层内容
在表单等项目中往往会遇到类似于“备注”.“说明”等100个字内的内容需要显示. 这些内容如果全部呈现开,会影响布局和美观,确又没有必要设计一个层或是一个页面. 那么,我们可以把这些内容放到浮动层中,鼠 ...
随机推荐
- Delphi实现无标题有边框的窗体
1.在delphi中新建窗体程序,然后设置窗口的 BorderStyle属性为bsNone 2.在窗体的public区写下这一句: Procedure CreateParams(var Params ...
- hadoop多机安装YARN
hadoop伪分布安装称为测试环境安装,多机分布称为生成环境安装.以下安装没有进行HA(热备)和Federation(联邦).除非是性能需要,否则没必要安装Federation,HA可以一试,涉及到Z ...
- JavaScript字符串的操作
<script> var s=new String(); var s="Hello World"; alert(s.toLowerCase(s));//转小写 aler ...
- ARC模式下的单例写法
// 单例 + (id)sharedInstance { __strong static id sharedObject = nil; static dispatch_once_t onceToken ...
- CSS中背景图片定位方法
转自:http://www.ruanyifeng.com/blog/2008/05/css_background_image_positioning.html 作者: 阮一峰 日期: 2008年5月 ...
- devpress GridControl控件绑定RepositoryItemImageComboBox 作为下拉框使用 zt
1.拖出gridview控件,然后将字段绑定上去 2.将要做下拉框的控件加入RepositoryItemImageComboBox控件 3.绑定数据 ; i < ; i++) { //如果取值时 ...
- SQL重复记录处理(查找,过滤,删除)
SQL重复记录处理(查找,过滤,删除) ID int Title nvarchar(50) AddDate datetime 数据 www.2cto.com ID ...
- ARM学习笔记9——ARM汇编汇编语言中的伪指令
ARN汇编器支持ARM伪指令,这些伪指令在汇编阶段被翻译成ARM或Thumb指令.ARM伪指令包含ADR.ADRL.MOV32和LDR.一.ADR伪指令 1.作用 ADR是小范围地址读取伪指令,基于P ...
- Linux常用命令收集
rsync -avH --progress felix/ /home/magnum/work-environment/ 同步本地文件夹,异常中断后仍然可以续传 rsync -avH --progres ...
- 【oracle】触发器简单实现
目标:实现实时备份uertest表数据至usertest_temp中,两表结构一致 解决:用oracle触发器实现同步 结果: 1.建表 -- 简单的用户表 create table USERTEST ...