dialog自定义圆角对框
2016-12-12 14:41
375 查看
由于在开发中发现原版的对话框太丑了.因此决定定义一个圆角的对话框,但是开始的时候老是出现背景.导致无法去除背景,所有想到了自定义,并设置器样式.因此这个时候改掉了
有背景的情况.
下面主要的讲解自定的类以及样式等,在自定义对话框使用到的类主要有:一个activity.一个自己封装的工具类.一个shape(自己定义的圆角形状),一个style,
首先展示的是工具类.这个是自己定义的.如果你感觉不符合你的要求可以自己进行改造.或者和我进行探讨
dialogUtil:
shape:
有背景的情况.
下面主要的讲解自定的类以及样式等,在自定义对话框使用到的类主要有:一个activity.一个自己封装的工具类.一个shape(自己定义的圆角形状),一个style,
首先展示的是工具类.这个是自己定义的.如果你感觉不符合你的要求可以自己进行改造.或者和我进行探讨
dialogUtil:
package com.jzbwlkj.distribution.util; import android.app.Activity; import android.app.Dialog; import android.view.View; import android.widget.Button; import android.widget.TextView; import com.jzbwlkj.distribution.R; /** * 作者:admin on 2016/12/12 13:53 */ public class DialogUtil extends Dialog { private Button positiveButton, negativeButton; private TextView contenttv; private Activity mActivity; private View view; //dialog为布局的xml public DialogUtil(Activity mActivity,int dialog) { //实现style样式 super(mActivity, R.style.mydialog); this.mActivity = mActivity; //通过View.inflate获取布局 view = View.inflate(mActivity,dialog,null); setContentView(view); //设置view } /** * 获取到view * @return */ public View getView(){ return view; } //设置内容 public void setContent(String content) { contenttv.setText(content); } }需要一个style.如果没有类型的限制那么会出现背景导致更加的奇葩样式:
<!--自定义一个对话框主题--> <style name="mydialog" parent="android:style/Theme.Dialog"> <!-- 背景透明 --> <item name="android:windowBackground">@android:color/transparent</item> <!-- 没有标题 --> <item name="android:windowNoTitle">true</item> <!-- 背景模糊 --> <item name="android:backgroundDimEnabled">true</item> </style>需要一个自I定义的形状shape:如果自己不太会自己定义可以使用我的更改里面的数值就可以.或者查找资料学习会自己定义会更好
shape:
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <solid android:color="#fff" /> <corners android:radius="20dp" /> </shape>接下来就activity:由于开发涉及到一些隐私所有仅仅拿出部分代码,见谅
/** * 弹出对话框 */ private void openDialog() { DialogUtil dialogUtil = new DialogUtil(this, R.layout.dialog_shopinfo); View view = dialogUtil.getView(); TextView tvBank = (TextView) view.findViewById(R.id.tv_dialog_bank); tvBank.setText("建设银行"); TextView tvMoney = (TextView) view.findViewById(R.id.tv_dialog_money); btCancel = (Button) view.findViewById(R.id.bt_dialog_cancel); btConfirm = (Button) view.findViewById(R.id.bt_dialog_confirm); //设置点击事件 btCancel.setOnClickListener(this); btConfirm.setOnClickListener(this); //对话框展示 dialogUtil.show(); }
相关文章推荐
- 自定义圆角风格dialog的Activity
- Android实现自定义圆角对话框Dialog的示例代码
- 自定义圆角Dialog
- Android自定义圆角Dialog
- Android 硬菜之圆角Dialog显示自定义布局(无棱角)
- Android 自定义Dialog (有圆角和和已适配大屏幕的广告机)
- android 自定义多选dialog(倒圆角)
- Android实现自定义圆角对话框Dialog
- android自定义圆角Dialog
- android自定义圆角Dialog
- 自定义dialog 圆角
- 自定义输入dialog,圆角边框,去掉底部黑色背景。去掉editText黄色输入框。
- 自定义圆角dialog,不需要图片
- Android 自定义带圆角的dialog
- Android-自定义圆角Dialog遇到的问题
- 自定义圆角风格dialog的Activity
- 简单的自定义一个拥有圆角的Dialog
- android 自定义自定义圆角dialog,消除黑色window背景
- 自定义圆角透明的Dialog
- 自定义圆角风格dialog的Activity