android dialog边框去除白色边框实现思路及代码

使用样式文件,在values 目录下新建styles.xml文件,编写如下代码:

复制代码 代码如下:

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><resources>

<style name="dialog" parent="@android:style/Theme.Dialog">

<item name="android:windowFrame">@null</item>

<item name="android:windowIsFloating">true</item>

<item name="android:windowIsTranslucent">false</item>

<item name="android:windowNoTitle">true</item>

<item name="android:background">@android:color/black</item>

<item name="android:windowBackground">@null</item>

<item name="android:backgroundDimEnabled">false</item>

</style>

</resources>

调用时,使用AlerDialog的接口类,Dialog 接口编写如下代码: 

复制代码 代码如下:

Dialog dialog = new Dialog(SetActivity.this, R.style.dialog);

dialog.setContentView(R.layout.test);

dialog.show();

下面我们查看一下Dialog的源码文件,里面的构造函数为如下:

复制代码 代码如下:

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->public Dialog(Context context, int theme) {

mContext = new ContextThemeWrapper(

context, theme == 0 ? com.android.internal.R.style.Theme_Dialog : theme);

mWindowManager = (WindowManager)context.getSystemService("window");

Window w = PolicyManager.makeNewWindow(mContext);

mWindow = w;

w.setCallback(this);

w.setWindowManager(mWindowManager, null, null);

w.setGravity(Gravity.CENTER);

mUiThread = Thread.currentThread();

mDismissCancelHandler = new DismissCancelHandler(this);

}

这里面我们可以看出,Android 使用了默认的构造函数为Dialog 设置样式,如果没有为其设置样式,即默认加载事先编写好的样式文件,Dialog 一共由多个9.png的图片构成,大部分都是带有边框的9.png图片,所以就是为什么我们上边的样式文件要将其背景去除掉。这个东西搞了我好久,希望对你有帮助

前后效果对比

未设置前:

设置后:

时间: 2024-10-03 13:23:22

android dialog边框去除白色边框实现思路及代码的相关文章

android dialog边框去除白色边框实现思路及代码_Android

使用样式文件,在values 目录下新建styles.xml文件,编写如下代码: 复制代码 代码如下: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><resources> <style name="dialog" parent="@android:style/Theme.Dialog">

Android 使用Intent传递数据的实现思路与代码

Intent是Android中一个非常重要的概念,跟这个词的本意(意图,目的)一样,这个类在Android中的作用就是要调用某个组建去做某一件事,比如通过startActivity启动一个Activity,通过startService启动一个Service,通过sendBroadcast发送一个广播等,它相当于各个组建间的一个桥梁.很重要的一点是这个过程是可以跨进程的,比如在应用中可以启动调用某个播放器组件(系统自身的或者第三方的)来播放一段视频,启动照相机程序拍照等等. 当我们启动视频播放器播

Android开发实现去除bitmap无用白色边框的方法示例

本文实例讲述了Android开发实现去除bitmap无用白色边框的方法.分享给大家供大家参考,具体如下: 图示 如下图所示,之前介绍过Android Bitmap的用法,这里提供的工具类作用是,去除内容区域以外的白色边框. 代码 import android.graphics.Bitmap; /** * Created by Victor Yang on 2016/6/17. * 去除 bitmap 无用的白色边框 */ public class BitmapDeleteNoUseSpaceUt

Android实现给TableLayou绘制边框的方法_Android

本文实例讲述了Android实现给TableLayou绘制边框的方法.分享给大家供大家参考,具体如下: 效果如下: 思路:使用share作为背景显示边框 步骤: 1.在res/drawable文件夹下建立table_frame_gray.xml文件: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res

Android实现给TableLayou绘制边框的方法

本文实例讲述了Android实现给TableLayou绘制边框的方法.分享给大家供大家参考,具体如下: 效果如下: 思路:使用share作为背景显示边框 步骤: 1.在res/drawable文件夹下建立table_frame_gray.xml文件: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res

Android TextView设置背景色与边框的方法详解_Android

1.在drawable文件夹下面创建setbar_bg.xml 复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" >    <!-- 背景色 -->    <solid android:color="#FFE4B5&q

zxing-ZXing生成二维码白色边框如何缩小,请各位大牛跟小弟说下,先谢谢了!!!

问题描述 ZXing生成二维码白色边框如何缩小,请各位大牛跟小弟说下,先谢谢了!!! 网上很多说,给EncodeHintType.MARGIN设置属性为1,但是我用的ZXing包里没有EncodeHintType.MARGIN这个变量,究竟该如何更改呢,请大牛赐教... 解决方案 http://zhidao.baidu.com/link?url=v6y-2Lk_Tzy56ZpDq8I3eQv7SmdiVeoz_7sKX-nHcGJebKI3MP9Qbbxl7ioAbZPYP_OkOIAegT4Z

form里面套webbrowser,在电脑上全屏,怎么感觉有个细细的白色边框

问题描述 form里面套webbrowser,在电脑上全屏,怎么感觉有个细细的白色边框在屏幕的边沿,如何去掉呢???请教高手 解决方案 解决方案二:没人知道吗?解决方案三:继续等待答案??解决方案四:1.重写全屏方法,全屏的时候窗体设置的比屏幕大一点.2.加一个有背景panle遮一下,一是一个方法解决方案五:继续等待,好的办法~解决方案六:建议不要这么用啊.直接使用webbrowser,在程序的生命周期内,内存是无法回收的,你会看到程序占用内存不断加大,最后奔溃解决方案七:该回复于2011-12

Android TextView设置背景色与边框的方法详解

1.在drawable文件夹下面创建setbar_bg.xml 复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" >     <!-- 背景色 -->     <solid android:color="#FFE4B