android 自己定义Dialog去除黑色边框

Posted wgwyanfs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 自己定义Dialog去除黑色边框相关的知识,希望对你有一定的参考价值。

在自己定义Dialog时显示的界面中老是有黑色的边框,以下就介绍使用style去除黑色边框方法。


首先在values/styles定义自己定义样式:

  <style name="MyDialog" parent="@android:Theme.Dialog">
        <item name="android:windowFrame">@null</item>
        <item name="android:windowBackground">@drawable/actionbar_item_background</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:background">#FFF</item>
    </style>
<item name="android:windowBackground">@drawable/actionbar_item_background</item>这个是重点,仅仅有加入了这个后才干去除黑色的边框


或者是自己定义一个透明的背景图片。这样也能够去除黑色边框!

代码:

	static class MsgDialog extends Dialog implements
			android.view.View.OnClickListener {
		private String text;


		public MsgDialog(Context context, String text) {
			super(context, R.style.MyDialog);
			this.text = text;
		}


		@Override
		protected void onCreate(Bundle savedInstanceState) {
			super.onCreate(savedInstanceState);
			setContentView(R.layout.login_dialog);
			TextView txt = (TextView) findViewById(R.id.login_dialog_txt);
			txt.setText(text);
			TextView confirm = (TextView) findViewById(R.id.login_dialog_btn);
			confirm.setOnClickListener(this);
		}


		@Override
		public void onClick(View v) {
			MsgDialog.this.dismiss();
		}


	}



xml:

<?xml version="1.0" encoding="utf-8"?

> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:paddingTop="5dp" android:background="#FFF" android:orientation="vertical" > <TextView android:id="@+id/login_dialog_txt" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="center" android:gravity="center" android:text="TextView" android:textColor="@color/grey3" android:textSize="18sp" /> <!-- 切割线 --> <View android:id="@+id/view_division" style="@style/Viewborder" /> <TextView android:id="@+id/login_dialog_btn" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:height="50dp" android:text="确定" android:textColor="@color/grey3" android:textSize="20sp" /> </LinearLayout>



--------------------------------------------------------------------------华丽丽的切割线-------------------------------------------------------------------------

dialog自己定义动画:

1、在style.xml中加入

 

    <style name="AA" parent="@android:style/Theme.Holo.Light.Dialog">
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowIsTranslucent">false</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowFullscreen">false</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowAnimationStyle">@style/dialogWindowAnim</item>
        <item name="android:backgroundDimEnabled">true</item>
        <item name="android:backgroundDimAmount">0.4</item>
    </style>

    <style name="dialogWindowAnim">
        <item name="android:windowEnterAnimation">@anim/enter</item>
        <item name="android:windowExitAnimation">@anim/exit</item>
    </style>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="500"
    android:fromXScale="100%"
    android:fromYScale="100%"
    android:pivotX="50%"
    android:pivotY="50%"
    android:toXScale="50%"
    android:toYScale="50%" >

</scale>


2、anim/enter.xml

<scale
        android:fromXScale="50%"
        android:fromYScale="50%"
        android:pivotX="50%"
        android:pivotY="50%"
        android:toXScale="100%"
        android:toYScale="100%" >
    </scale>

  anim/exit.xml

3、在代码中

在DialogFragment的方法onCreateDialog中使用

AlertDialog.Builder builder = new AlertDialog.Builder(getActivity(),
				R.style.AA);

dialg自己定义动画,ok















以上是关于android 自己定义Dialog去除黑色边框的主要内容,如果未能解决你的问题,请参考以下文章

Android:dialog去除边框的实现(自带Style的padding)

ps5保存的图片有黑色边框,如何去除,请大师们赐教

如何去除超链接图像周围的黑色边框?

去除 youtube 缩略图上的黑色边框 4:3

Element-UI中Drawer抽屉去除标题自带黑色边框

android button边框怎么去掉