android - 在 onResume() 之前动态更改 DialogFragment Max_Height?
问题描述
我有一个自定义DialogFragment
,我想根据其视图的内容大小(包装内容)动态更改其 max_height。
我不希望 的更新max_height
导致 UI 跳跃,所以我计划在视图生命周期的早期进行:onMeasure()
.
但是我怎样才能通知包含dialog
or dialogFragment
?
从对话框片段我可以得到它的托管视图,但我无法注册它的onMeasure()
事件。
从视图来看,我可以在onMeasure()
方法中编写代码,但我将如何获得对其包含对话框的引用?
我看到了这篇文章,但是随意更改高度onResume()
会导致 UI 迟缓(看到 UI 后跳转)
解决方案
((View) view.getParent()).invalidate()
在onMeasure()
哪个视图中怎么样。我意识到这是错误的,但应该用一个班轮解决你的问题。
View
诚然,如果重新计算的高度在视图层次结构中更深,这会变得更加麻烦。
推荐阅读
- c# - IronPython.Runtime.Exceptions.ImportException:'没有名为 pandas 的模块'
- angular - 如何在从组件 2 回到组件 1 时冻结组件 1 的状态
- smtp - PHPMailer 允许 mime 边界可见
- sql - Oracle:每次价值变化后的分析函数小计
- bash - sed/Awk/cut... 如何决定使用哪个来解析 Docker 输出?
- css - 如何使用 laravel 5.7 更改 fontawesome 的导入路径
- python - 带有kivy的随机屏幕显示
- javascript - v-on 单击,仅在满足条件时添加处理程序
- reactjs - Meteor-React 教程:缺少安装 Babel 包的步骤
- node.js - 使用 PM2 运行节点服务器