Android实现把年月选择器放到AlertDialog中_左眼看成爱的博客-CSDN博客
Android使用NumberPicker实现年月滚动选择器_左眼看成爱的博客-CSDN博客
前面两篇文章我们分别讲了
1,如何用NumberPicker实现年月选择器
2,如何把1中的用NumberPicker实现的年月选择器放到AlertDialog中去。
这篇文章我们则推出实现了弹层遮罩联动的最终版本,具体实现的效果请看示例图:
1 定义自定义的Dialog样式
在res/values/styles.xml文件中定义自定义的Dialog样式:
<style name="BottomDialog" parent="Theme.AppCompat.Dialog">
<item name="android:windowIsFloating">false</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<!-- <item name="android:background">@color/White</item>-->
<!-- <item name="android:windowAnimations">@style/DialogAnimation</item>-->
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
其中,BottomDialog是自定义的Dialog样式名称,windowIsFloating设置为false表示Dialog不浮在activity之上,windowNoTitle表示Dialog没有标题栏,windowBackground设置为透明色,windowAnimations设置为Dialog的进出动画,background设置为透明色,windowSoftInputMode设置为stateUnspecified|adjustResize表示弹出Dialog时不会挤压当前界面的布局,windowIsTranslucent设置为true表示Dialog的背景为透明,windowContentOverlay设置为null表示Dialog的内容不会覆盖系统状态栏。
2 创建Dialog对象
在Java代码中创建Dialog对象,并设置样式:
Dialog dialog = new Dialog(context, R.style.BottomDialog);
dialog.setContentView(R.layout.your_layout);
dialog.setCancelable(true);
dialog.setCanceledOnTouchOutside(true);
3 显示Dialog
dialog.show();
将上面那两篇教程中的布局文件复制过来即可,也就是R.layout.your_layout
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/139866.html