【转】悬浮的对话框

先贴一下显示效果图,仅作参考:

代码如下:

1、自定义Dialog

public class SelectDialog extends AlertDialog{

public SelectDialog(Context context, int theme) {
    super(context, theme);
}

public SelectDialog(Context context) {
    super(context);
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.slt_cnt_type);
}
}

2、布局文件slt_cnt_type.xml代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:padding="10dp" android:layout_width="115dp" android:layout_height="wrap_content" android:background="@color/blue">
    <Button android:layout_height="wrap_content" android:background="#00000000" android:layout_width="fill_parent" android:text="全部联系人" android:paddingTop="5dp" android:paddingBottom="5dp" android:paddingLeft="10dp" android:gravity="left|center_vertical" android:id="@+id/btnSltCntAll"></Button>
    <Button android:layout_height="wrap_content" android:background="#00000000" style="@drawable/greenhand_button" android:text="咕咚用户" android:gravity="left|center_vertical" android:paddingBottom="5dp" android:paddingTop="5dp" android:paddingLeft="10dp" android:paddingRight="10dp" android:layout_width="fill_parent" android:id="@+id/btnSltGudongUser"></Button>
    <Button style="@drawable/greenhand_button" android:background="#00000000" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="推荐用户" android:gravity="left|center_vertical" android:paddingTop="5dp" android:paddingBottom="5dp" android:paddingLeft="10dp" android:id="@+id/btnSltRecommend"></Button>
</LinearLayout>

3、颜色color.xml代码

<?xml version="1.0" encoding="utf-8"?>
<resources>
  <color name="transparent">#00000000</color>
</resources>

4、样式style.xml代码

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="dialog" parent="@android:style/Theme.Dialog">
        <item name="android:windowFrame">@null</item><!--边框-->
        <item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
        <item name="android:windowIsTranslucent">false</item><!--半透明-->
        <item name="android:windowNoTitle">true</item><!--无标题-->
        <item name="android:windowBackground">@color/transparent</item><!--背景透明-->
        <item name="android:backgroundDimEnabled">false</item><!--模糊-->
    </style>
</resources>

4、显示Dialog

SelectDialog selectDialog = new SelectDialog(this,R.style.dialog);//创建Dialog并设置样式主题
Window win = selectDialog.getWindow();
LayoutParams params = new LayoutParams();
params.x = -80;//设置x坐标
params.y = -60;//设置y坐标
win.setAttributes(params);
selectDialog.setCanceledOnTouchOutside(true);//设置点击Dialog外部任意区域关闭Dialog
selectDialog.show();

时间: 2024-10-16 20:15:02

【转】悬浮的对话框的相关文章

android源码大放送(实战开发必备),免费安卓demo源码,例子大全文件详细列表

免费安卓demo源码,例子大全文件详细列表 本列表源码永久免费下载地址:http://www.jiandaima.com/blog/android-demo 卷 yunpan 的文件夹 PATH 列表 卷序列号为 0000-73EC E:. │ jiandaima.com文件列表生成.bat │ 例子大全说明.txt │ 本例子永久更新地址~.url │ 目录列表2016.03.10更新.txt │ ├─前台界面 │ ├─3D标签云卡片热门 │ │ Android TagCloudView云标签

程序猿必要10免费的钱jquery小工具

本周带来10款免费的jquery插件.假设你也有好的作品,欢迎分享到社区中来,在得到帮助的同一时候,也能与很多其它人分享来自你的作品. jQuery导航菜单置顶插件 - stickyUp . 在线演示 stickyUp是一款能够帮助你生成置顶效果的jquery插件,假设你希望生成一个固定页面顶端的导航效果,能够使用stickUp来高速生成. 很有用的回弹菜单 在线演示 这是一款有用型的菜单插件,能够用在非常多地方.点击链接能够查看到在线演示并获得免费下载. 使用jQuery adaptive m

关于Fragment你所需知道的一切

前言 Fragment 是 Android API 中的一个类,它代表Activity中的一部分界面:您可以在一个 Activity 界面中使用多个 Fragment,或者在多个 Activity 中重用某一个 Fragment. 本文将介绍 Fragment 的 定义.创建.添加.移除.生命周期 等,如需访问官方原文,您可以点击这个链接(大多数情况下你得借助某些工具才可以访问): https://developer.android.com/guide/components/fragments.

程序员们必备的10款免费jquery插件

本周带来10款免费的jquery插件.如果你也有好的作品,欢迎分享到社区中来,在得到帮助的同时,也能与更多人分享来自你的作品. jQuery导航菜单置顶插件 - stickyUp . 在线演示 stickyUp是一款可以帮助你生成置顶效果的jquery插件,如果你希望生成一个固定页面顶端的导航效果,可以使用stickUp来快速生成. 非常实用的回弹菜单 在线演示 这是一款实用型的菜单插件,可以用在很多地方,点击链接可以查看到在线演示并获得免费下载. 使用jQuery adaptive modal

Android实习札记(4)---Fragment(碎片)基本概念解析

Android实习札记(4)---Fragment(碎片)基本概念解析 转载请注明出处:coder-pig Fragment相信大家都不会陌生吧,侧滑啦,抽屉效果啦,DialogFragment啊等等,一堆地方都会 用到Fragment,对于Fragment的基本概念在前面的文章中其实已经给出的了,这里回顾一遍, 温故而知新嘛,同时结合Google官方的api进行复习! 1)什么是Fragment以及它的生命周期: 核心要点: 1)3.0版本后引入,即minSdk要大于11 2)Fragment

Android官方文档之App Components(Fragments)

Fragment是Android API中的一个类,它代表Activity中的一部分界面:您可以在一个Activity界面中使用多个Fragment,或者在多个Activity中重用某一个Fragment. 本文将介绍Fragment的定义.创建.添加.移除.生命周期 等,如需访问官方原文,您可以点击这个链接:<Fragments>. Fragments 可以把Fragment想象成Activity中的一个模块,它有自己的生命周期.可以接收输入事件.可以在Activity运行时将Fragmen

可拖拽悬浮窗、对话框悬浮窗的简单实现

   本文讲解的是Android的悬浮窗机制,这个悬浮窗在很多第三方ROM会被屏蔽,像是小米,锤子上都无法显示.小米倒是可以通过开关开启,但在锤子上根本连开的机会都没有,真是无奈啊…… 虽然悬浮窗在实际中比较难以推广,但学习方面还是没问题的啦. 一.常规悬浮窗 思路: 1.建立一个服务,并且在里面生成一个WindowManager对象,通过它来加载一个视图作为悬浮窗. 2.设置WindowManager的参数Params 3.设置一个容器来找到悬浮窗的父控件,并绑定到windowManager中

悬浮对话框的实现

直接上代码: private void setDialog(){ View view = getLayoutInflater().inflate(R.layout.dialog_country, null); mDialog = new Dialog(this); mDialog.setContentView(view, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); Window window =

手机卫士08_应用程序的flags_PopupWidnow悬浮窗体

1,应用管理的ui界面 条目界面的参考ui ①然后显示在ListView上即可(记得优化,程序大小的格式化等) ②获取ListView需要花费一定时间,所以放在子线程,再通过runOnUiThread()更新ui即可 ③创建一个FrameLayout,包含ListView,然后设置一个等待框,在获取的时候显示在页面上. 2,应用程序的flags (可以区分应用程序的安装位置,系统和用户安装的程序等) 2.1 ①在遍历每一个包信息的时候packInfo.application.flags(可能是多