约束不在工具栏居中

时间:2019-04-15 16:11:50

标签: android toolbar android-constraintlayout

可以避免在ConstraintLayout中继承视图度量吗? 我的意思是,我有一个显示工具栏的活动和一个用于显示片段的框架容器。该片段垂直和水平居中,但是在添加工具栏时,所有内容都会向下移动。

所以。有什么方法可以实现这一目标?

1 个答案:

答案 0 :(得分:1)

这取决于父容器。您可以使用

  • ConstraintLayout
  • RelativeLayout
  • MotionLayout

或其他相对类型布局,但是您不能使用LinearLayout,因为那样将不允许您将子级移动到LinearLayout的其他部分。

下一步,对于父活动,如果要允许自己在父边界之外建立约束,则需要确保没有将FrameLayout放在工具栏下方。您的父项是FrameLayout,因此,如果它已被向下推到工具栏下方,则除非您获得parent.parent进行绑定,否则将无法绑定到其父项。

所以您有一些选择。

  1. 确保您的活动没有将ToolLayout推入工具栏下方,以使FrameLayout始终与父项匹配,而不受工具栏的影响(请小心,因为您必须确保其他布局不会与工具栏区域中的工具栏区域重叠)您的用户界面,看起来可能很糟糕。
  2. 您可以在需要浮动的UI上使用负边距,这不是一个好习惯,我不建议这样做。
  3. 您可以为parent.parent建立一个约束,因为这样您的约束将绑定到framelayouts父对象,而不是framelayout本身。

如果您需要更多帮助,请共享您的XML,以便我指出您可以进行调整的地方。

快乐编码!