自定义Dialog
来源:互联网 发布:淘宝代购加盟 编辑:程序博客网 时间:2024/05/16 10:42
这是本人的第一篇博客,写博客的目的是分享知识传播经验,回馈那些帮助过我的人,同时也是在提升自我;
当然,我所要讲的在网上肯定可以找得到,那有人问我为什么我要写这篇博客?答案是:我想去感恩,去回报帮助过我的那些博客,同时我想总结分享一些我认为比较重要的知识点以方便刚入门的小伙伴学习,初来乍到还请各位多多指点。
下面要基于AlertDialog实现自定义布局的效果:
首先来看效果图:
实现步骤:利用Dialog子类AlertDialog加载自定义布局文件实现如上效果:
1.在Activity中:
private AlertDialog alertDialog;private void alertDialog() { View view = getLayoutInflater().inflate(R.layout.layout_dialog, null); Button bt = (Button) view.findViewById(R.id.btn); bt.setOnClickListener(this); alertDialog = new AlertDialog.Builder(this, R.style.TransparentBackgroundDialog) .setView(view) .create(); alertDialog.show(); }
调用alertDialog()即可弹框,其中为btn设置点击事件,点击btn后 dialog消失:alertDialog.dismiss();
2.加载自定义布局 layout_dialog.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:paddingLeft="20dp" android:paddingRight="20dp" android:background="@drawable/bg_dialog" android:orientation="vertical"> <TextView android:text="自定义Dialog" android:layout_marginTop="10dp" android:textColor="#333" android:textSize="16sp" android:layout_width="240dp" android:layout_height="wrap_content"/> <TextView android:text="在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择。" android:layout_marginTop="10dp" android:textColor="#666" android:textSize="16sp" android:layout_width="240dp" android:layout_height="wrap_content"/> <Button android:id="@+id/btn_sure" android:layout_width="240dp" android:layout_height="40dp" android:layout_marginTop="20dp" android:layout_marginBottom="20dp" android:textSize="16sp" android:textColor="#f8f8f8<span style="font-family: Arial, Helvetica, sans-serif; color: rgb(169, 183, 198);">"</span> android:text="我知道了" android:background="@drawable/common_green_corner_selector"/></LinearLayout>
3.为dialog设置主题,自定义主题可以设置dialog弹出时的透明度 在style.xml中
<style name="TransparentBackgroundDialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <item name="android:windowIsFloating">true</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> <!--#00000000 透明效果--> <item name="android:background">@color/transparent</item> <item name="android:windowBackground">@color/de_transparent</item> <item name="android:backgroundDimEnabled">true</item> <item name="android:textColor">@color/text_40</item> <!--代表dialog弹出时dialog之外界面可见部分的透明度0到1,值越小越透明--></span> <item name="android:backgroundDimAmount">0.4</item> </style>
4.实现圆角:只要指定layout_dialog.xml 根布局为圆角白色背景即可实现如上效果;
android:background="@drawable/bg_dialog"在drawlable中:bg_dialog.xml
<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="@color/common_white"/> <corners android:bottomLeftRadius="13dp" android:bottomRightRadius="13dp" android:topLeftRadius="13dp" android:topRightRadius="13dp" /> <size android:width="240dp" android:height="240dp" /></shape>以上代码即可实现如图效果;
0 0
- 自定义Dialog---继承Dialog
- 自定义Dialog android Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义dialog
- 自定义 Dialog
- 自定义dialog
- 自定义 dialog
- 自定义Dialog
- 自定义 Dialog
- 自定义Dialog
- 自定义dialog
- 自定义Dialog
- 自定义 Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义Dialog
- 自定义Dialog
- 2015年蓝桥杯省赛B组C/C++(试题+答案)前几题
- Java遍历文件树的实现和测试
- docker的安装--基于docker1.6
- 08 scala, imported `Record' is permanently hidden by definition of class Record in package test
- 远程win10系统桌面时提示凭证不工作问题的终极解决办法
- 自定义Dialog
- webView
- 64位系统安装了32位的MySQL后出现的error LNK2019错误解决方法
- 【PAT】1042. 字符统计(20)
- 多态 抽象 综合
- 图解Git/图形化的Git参考手册
- ZOJ 3229 Shoot the Bullet(有源汇有上下界最大流)
- Unity VS插件配置
- centos6.5安装docker