自定义一个类继承自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个字内的内容需要显示. 这些内容如果全部呈现开,会影响布局和美观,确又没有必要设计一个层或是一个页面. 那么,我们可以把这些内容放到浮动层中,鼠 ...
随机推荐
- [Mac]使用xcode命令行编译protobuf
因为不想每次测试与画面显示无关的小功能时把cocos2dx包含进去,所以改用xcode的command line tool直接建立c++项目. 方法: 1.点击file-new-project,选择o ...
- C语言实现定积分求解方法
求定积分的方法有很多种,下面是我总结的几种比较常用的方法. #include <stdio.h> #include <stdlib.h> #include <math.h ...
- INFORMATION_SCHEMA.INNODB_TRX 详解
从192.168.11.186 上登录 192.168.11.185 数据库: root 13246 547 0 13:39 pts/1 00:00:00 mysql -uroot -px xxxxx ...
- statspack系列6
原文:http://jonathanlewis.wordpress.com/2006/12/27/analysing-statspack-6/ 作者:Jonathan Lewis 下面是一段时间以前网 ...
- Linux Kernel 'sctp_v6_xmit()'函数信息泄露漏洞(CVE-2013-4350)
漏洞版本: Linux kernel 漏洞描述: BUGTRAQ ID: 62405 CVE(CAN) ID: CVE-2013-4350 Linux Kernel是Linux操作系统的内核. Lin ...
- Docker在云环境中的应用实践初探:优势、局限性与效能评测
作者 商之狄 发布于 2014年11月10日 本文依据笔者所在团队的一些近期开发和应用的实践,整理出一些有意义的信息,拿出来和社区分享.其中既包括在云端应用Docker与相关技术的讨论,同时也有实施过 ...
- 通过新的 Azure 媒体服务资源管理器工具管理媒体工作流
Xavier Pouyat Azure 媒体服务高级项目经理 几个月前,一家广播公司找到了我,希望我向他们提供一种图形界面工具,好让他们使用 Azure媒体服务来上传.管理资产并对资产进行编 ...
- spm_预处理实验记录
参考:<SPM8 MANNUAL> Chapter 28 Auditory fMRI data
- android报错——java.lang.ClassNotFoundException[android]
E/AndroidRuntime(1875): Caused by: java.lang.ClassNotFoundException:XXXXX in loader dalvik.system ...
- http Error 503 server unavailable
服务器的环境为: 系统:Windows server 2008 64位 数据库:Oracle 10g WEB应用服务:IIS 7.0+.Net Framework 4.0 无法打开服务元数据库路径“/ ...