Android DialogFragment宽度占满高度自适应,4.4,5.1去掉默认Title

news/2024/7/6 4:01:32 标签: 移动开发

有一个让DialogFragment占满屏幕的需求,在网上查到多种解决办法不是无效就是对显示效果有影响,最后还是靠自己查看官方文档和查看源码后找到的解决办法,在这记录分享一下。

Android中 DialogFragment宽度占满高度自适应,在Fragment的onResume()方法中设置window的宽高即可,第一个参数是宽度-1代表默认占满;第二个参数高度-2默认自适应高度(这两个参数也可以直接设置固定宽高)。

@Override
public void onResume() {
    super.onResume();
    getDialog().getWindow().setLayout(-1,-2 );
}
复制代码

在Android4.4和5.1版本遇到多出一空白Title的问题。

在Fragment的onCreateView()方法中设置getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);取消Title。
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_question_see_dialog, container, false);
    getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE); /** 去4.4,5.1空Title */
    return view;
}
复制代码

结语:修改后对原来风格没有影响,完美。

学疏才浅,有不当的地方敬请指正。

转载于:https://juejin.im/post/5b8751756fb9a019e1149efc


http://www.niftyadmin.cn/n/1621141.html

相关文章

CMake Error: The source directory * does not appear to contain CMakeLists.txt.

linux安装mysql出现的问题 很多人说是没有切换到mysql的源码目录去执行cmake,这是一种因数,还有一个原因就是你下载的mysql.linux版本不对, 你下载的不是源码版本的。应该选择:

APM APM

这里写目录标题1. APM1.1. 什么是 APM 系统?1.2. APM 的基本原理1.3. 如何才能实现跟踪呢?1.4. APM 的筛选标准1. APM 1.1. 什么是 APM 系统? APM 系统可以帮助理解系统行为、用于分析性能问题的工具, 以便发生故障的时候, 能够快速定位和解决问题, 这就是 APM 系统, 全称…

Linux- 环境源码安装MySql5.6教程

一、安装方式 1、企业内部系统安装推荐yum安装,对数据库要求不高,并发不大,源码制作rpm,搭建rpm仓库,然后yum install xxx -y 2、常规方式编译安装MySql 5.1以前:./configure \ make, make isntall 5.5-5…

正则表达式入门教程

阿里云大学免费课程:正则表达式入门教程课程介绍:正则表达式,又称规则表达式,英文名为Regular Expression,在代码中常简写为regex、regexp或RE,是计算机科学的一个概念。正则表通常被用来检索、替换那些符合…

Go File

这里写目录标题1. Go File1.1. 将 string 转换为 io.Reader 类型1.2. golang 如何按行读取文本1.2.1. bufio.Reader 和 bufio.Scanner 的关系1. Go File 1.1. 将 string 转换为 io.Reader 类型 在使用很多函数的时候需要传入 string 字符串 , 但是函数参数类型是 io.Reader, …

10秒快速掌握ScheduledExecutorService 中的 scheduleWithFixedDelay() 和 scheduleFixedRate() 区别

scheduleWithFixedDelay: 不管线程任务的执行时间的,每次都要把任务执行完成后再延迟固定时间后再执行下一次。 scheduleFixedRate: 是以固定频率来执行线程任务,固定频率的含义就是可能设定的固定时间不足以完成线程任务&#x…

MySQL 5.7 用户与日志管理

说明:数据库是信息系统中非常重要的一个环节,合理高效地对它进行管理是很重要的工作。通常是由总管理员创建不同的管理账户,然后分配不同的操作权限,把这些账户交给相应的管理人员使用。由于日志文件是掌握数据库运行状态的重要参…

Podman 容器 pod 管理工具

这里写目录标题1. Podman 容器 pod 管理工具1.1. 什么是 Podman1.1.1. Roadmap1.2. Podman 历史1.2.1. 缘起1.2.1.1. 鸿蒙1.2.1.2. 创世1.2.2. 纷争1.2.2.1. 发展1.2.2.2. 野心1.2.2.3. 冲突1.2.2.4. 成败1. Podman 容器 pod 管理工具 1.1. 什么是 Podman Podman 是 Libpod 的…