【发布时间】:2019-09-16 00:06:16
【问题描述】:
我有一个自定义 DialogFragment,我想根据其视图的内容大小(包装内容)动态更改其 max_height。
我不希望 max_height 的更新导致 UI 发生跳跃,因此我计划在视图生命周期的早期进行:onMeasure()。
但是我怎样才能通知包含dialog 或dialogFragment?
从对话框片段我可以得到它的托管视图,但我无法注册它的onMeasure() 事件。
从视图上看,我可以在onMeasure() 方法中编写代码,但我将如何获得对其包含对话框的引用?
我看到了这篇文章,但是在onResume() 处更改高度会导致 UI 迟钝(看到 UI 后跳转)
【问题讨论】:
-
您希望高度动态变化吗?
-
是的,我想根据对话内容设置max_height
-
那么也许扩展
DialogFragment是一个更好的选择。通过这种方式,您可以扩展您自己的随内容扩展的布局。 -
我确实扩展了,但我想根据对话内容的度量来更改 max_Height。你将如何避免 UI 跳转?
-
您想在什么时候更改 DialogFragment 的高度?
标签: android layout dialog android-dialogfragment onmeasure