android - 父高度为 0 而子视图高度 > 0
问题描述
我有一个布局FrameLayout
,FrameLayout
其中有 2 个RelativeLayout
。我将此布局包含在activity_main.xml
标签include
中。
activity_main.xml
是 aMotionLayout
并且这个“包含布局”是MotionLayout
.
我已经定义了一个ConstraintSet
,在这个里面ConstraintSet
,我已经定义Constraint
了这个“包含布局”(width=match_parent,height=wrap_content,bottomToBottomOfParent)。
在代码中,我RelativeLayout
按条件显示/隐藏上面,然后我使用transitionToState
转换到上面ConstraintSet
。大多数时候,它运行良好,但有时上面的“包含布局”不显示。
我进行了调试(延迟 2 秒以确保视图完全渲染),我发现当“包含布局”未显示时,它的高度为 0,但子视图高度 > 0
parentView.layoutParams.height=-2
, -2 <=> WRAP_CONTENT
是否有任何可能导致此问题发生的情况?
解决方案
对于当时正在播放的过渡,请尝试添加
<Transition ... motion:layoutDuringTransition="honorRequest" \>
推荐阅读
- python - 使用python和requests远程登录解耦网站
- flutter - 如何在列内实现多个水平列表
- python - 如何使用 python-socketio 从客户端访问我的套接字 ID?
- html - 引导切换在 iPhone X Safari 上不起作用
- java - 以编程方式更改语言环境不适用于 Android 6.0.1
- nameko - 实现(抽象)Nameko 服务继承
- html - 在 CSS 中 ID 末尾带有奇数/偶数的目标 div
- php - 如何预览和下载超过 12 MB 的 php 文件?
- c# - 带有 Web API 的角度
- mongodb - 查找和展开mongodb后如何防止重复总和