我有一个自定义DialogFragment
,我想根据其视图的内容大小(包装内容)动态更改其max_height。
我不希望max_height
的更新导致UI跳转,因此我计划在视图的生命周期的尽头进行此操作:onMeasure()
。
但是我如何才能通知包含的dialog
或dialogFragment
?
从Dialog片段中,我可以获得其托管视图,但是无法注册它的onMeasure()
事件。
从视图中,我可以使用onMeasure()
方法编写代码,但是如何获得对其包含对话框的引用?
我看到了这篇文章,但是在onResume()
处调高将导致UI变渣(看到UI后会跳转)
答案 0 :(得分:0)
在任何视图的((View) view.getParent()).invalidate()
中onMeasure()
都如何。我意识到这是错误的做法,但应该使用一根衬纸解决您的问题。
诚然,如果重新计算的高度View
在“视图层次结构”中更深,则会变得麻烦很多。