关于DialogFragment全屏方案
DialogFragment默认情况下就算给内部布局设置match_parent也不是全屏。于是网上就有很多的方案,讲讲我所遇到的坑。
1.给window设置高度
很多地方都是用这样的写法
Window dialogWindow = getDialog().getWindow(); WindowManager.LayoutParams lp = dialogWindow.getAttributes(); lp.width = width; lp.height = height; dialogWindow.setAttributes(lp);
宽高无论设match_parent还是屏幕宽高都行。
一般情况下这样的方案确实可行,但是在全屏时候弹出软键盘会有一个闪的效果(我的是华为8.0的手机)。然后我把代码写在onStart生命周期之后,弹出软键盘是没什么问题了,但是转屏之后就不再是全屏。看得就算我解决这个问题,估计这个方案也还会出现其他问题。
2.设置style
这是我看别人一篇分析写到的,写得很好
<item name="android:windowIsFloating">false</item>
将这个属性设为false就可以了,这种方案即简单又稳定。
贴上讲解的链接,我觉得讲得很好
https://www.jianshu.com/p/3ecad4bfc55e
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
如果Android真的收费了,你怎么看?
声明:本文有终端研发部yuer原创发布,未经允许,不得转载 前言 今天突然看到一群里有人发了下面这样一张图片,然后群里又炸了! 于是又和同事讨论了android收费的问题,然后隔壁正在玩农药的UI妹子就笑了... 没错! 安卓可能要收费了!安卓可能要收费了!安卓可能要收费了! 欧盟两张罚单,谷歌白干半年 欧盟向来以反垄断法严厉著称,苹果、三星、英特尔、高通等巨头都吃过欧盟反垄断法的相关罚单。公开数据显示,2013年至今,欧盟已经因为反垄断法向多家企业罚款共计128.12亿欧元。只是,谷歌这次比较难受,相隔一年,吃了欧盟两张罚单,两张罚单还都创造了欧盟罚单的最高纪录,分别为24.2亿欧元、43.4亿欧元。 早在前几个月,大家都听说了,欧盟最近又搞事情,给谷歌开出了50亿美金的天价罚单。然后这导致的最直接的结果是什么呢? 其实,谷歌也表示很无奈:我把安卓开源拿给大家免费使用,给用户提供了一些自己开发的便利软件,你还要告我垄断。 Android(安卓)的免费生态系统可能将被打破 谷歌方面表示将对欧盟这一决定提出上诉,谷歌CEO桑达尔·皮查伊(Sundar Pichai)发表文章称由于欧盟的决...
- 下一篇
Kotlin学习探索-1
前言: 今天是2018年10月24日,也就是1024节,在这里首先祝福大家节日快乐,祝福各位研发朋友开心快乐、身体健康 1024节日快乐 本篇文章是《Kotlin学习探索》系列的第一篇,本篇文章主要学习的知识点有: Kotlin在Android Studio上的环境搭建 Kotlin在Android Studio上的应用和可视化直观对比 Kotlin在Android Studio上的环境搭建: Android Studio 从 3.0(preview)新版本开始就已经内置安装了 Kotlin 插件。如果没有的话,可以在studio上依次点开:File - Settings(可以直接快捷键:ctrl+ALT+s) - Plugins - Browse Repositories,接着,搜索关键字:Kotlin,然后点击右上角的install,下载完毕之后会重启Android Studio。这是已经安装成功的参考图,如下: Kotlin配置界面 插件下载完毕以后,我们开始创建一个Kotlin的新项目,跟传统创建方式不一样的地方是,需要在创建项目的时候,勾选: Include kotlin s...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Linux系统CentOS6、CentOS7手动修改IP地址
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2整合Thymeleaf,官方推荐html解决方案