您的位置:首页 > 其它

圆角dialog配合自定义布局(去除外框阴影)

2017-04-19 10:02 369 查看
一,

新建自定义dialog

package com.example.administrator.testjs;

import android.app.Dialog;

import android.content.Context;

import android.os.Bundle;

import android.widget.LinearLayout;

import android.widget.TextView;

/**

 * Created by Think on 2016/8/9.

 */

public class CommentDialog extends Dialog {

    private TextView tv;

    public CommentDialog(Context context) {

        super(context, R.style.loadingDialogStyle);

        this.setCanceledOnTouchOutside(false);

    }

    private CommentDialog(Context context, int theme) {

        super(context, theme);

    }

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.item_progress);

    }

}

二,

自定义values的style

<style name="loadingDialogStyle" parent="android:Theme.Dialog">
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowFrame">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowContentOverlay">@null</item>
    <!-- 对话框是否有遮盖 -->
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
    <item name="android:backgroundDimEnabled">true</item>
</style>

三,xml布局文件

重点是background设置一个shape以达到圆角效果

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="200dp"
android:background="@drawable/btn_blue_border"
android:layout_height="100dp">
<TextView
android:id="@+id/tvOne"
android:layout_marginTop="30dp"
android:layout_centerHorizontal="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:text="点击重新加载.."
android:textColor="#000"
/>
<Button
android:layout_marginTop="20dp"
android:layout_below="@+id/tvOne"
android:id="@+id/btnRestart"
android:layout_marginBottom="10dp"
android:layout_centerHorizontal="true"
android:textSize="13sp"
android:text="确定"
android:layout_width="60dp"
android:layout_height="20dp"
android:background="@drawable/btn_blue_border"/>
</RelativeLayout>


四,shape布局

<shape xmlns:android="http://schemas.android.com/apk/res/android" >

<!-- 填充颜色 -->
<solid android:color="#77000000" />

<!-- 圆角 -->
<corners android:radius="5dip" />

<!-- 边框 -->
<!--<stroke-->
<!--android:width="1dip"-->
<!--android:color="#77000000" />-->

<!-- 间隔 -->
<padding
android:left="5dp"
android:right="5dp"/>

</shape>


五,使用

mNetWorkDialog = new NetWorkDialog(this,R.style.loadingDialogStyle);

mNetWorkDialog.show

如果想对dialog做一些操作或者findViewById  都要在show之后进行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: