【问题标题】:Trying to position view inside ConstraintLayout试图在 ConstraintLayout 中定位视图
【发布时间】:2017-04-04 11:29:04
【问题描述】:

我尝试将我的三个图像按钮放置在 Android-studio 中。但是,每次我使用设计编辑器将图像按钮放置在正确的位置时,运行应用程序时它都不会生效。使用设计编辑器而不是文本编辑器,会给出以下信息:

这个视图没有约束,它只有设计时位置,所以会跳转到(0,0),除非你少加约束...

如果这就是我要做的全部,我如何在 xml 编辑器中添加约束

另外,这一行被添加到 xml 编辑器中: tools:layout_editor_absoluteY="80dp" tools:layout_editor_absoluteX="52dp" />

我使用的是 ConstraintLayout 而不是 RelativeLayout... 我的 main.activity xml 代码:

<ImageButton
    android:id="@+id/positive_Button"
    android:layout_width="150dp"
    android:layout_height="150dp"
    android:adjustViewBounds="true"
    android:background="@null"
    android:scaleType="fitCenter"
    app:srcCompat="@drawable/positive"
    android:gravity="left"
    tools:layout_editor_absoluteY="80dp"
    tools:layout_editor_absoluteX="39dp" />

<ImageButton
    android:id="@+id/neutral_Button"
    android:scaleType="fitCenter"
    android:layout_width="150dp"
    android:layout_height="150dp"
    app:srcCompat="@drawable/neutral"
    android:background="@null"
    android:adjustViewBounds="true"
    tools:layout_editor_absoluteY="80dp"
    tools:layout_editor_absoluteX="230dp" />

<ImageButton
    android:id="@+id/negative_Button"
    android:layout_width="150dp"
    android:layout_height="150dp"
    app:srcCompat="@drawable/negative"
    android:background="@null"
    android:adjustViewBounds="true"
    android:scaleType="fitCenter"
    tools:layout_editor_absoluteY="80dp"
    tools:layout_editor_absoluteX="412dp" />

【问题讨论】:

  • 布局文件中的父视图是什么????
  • 发布您的 xml 代码。
  • 请提供您所有的 XML 代码。
  • ConstraintLayout 是父布局吗?
  • @Jens 尝试将您的问题标题编辑为 尝试在 ConstraintLayout 中定位视图。以便其他面临问题的人能够找到解决方案。

标签: android xml android-layout android-studio


【解决方案1】:

在 Editor 的设计选项卡中,右键单击您的 Widget 即 ConstraintLayout,然后单击下拉列表中的 Infer Constraints。 IDE 会自动为您添加代码。

Constraint Layout ---> Infer Constraint

【讨论】:

    【解决方案2】:

    属性工具:仅用于开发目的。工具:构建时会剥离属性。您希望如何定位视图?然后我可以提出一个解决方案。你可以使用

    android:layout_marginLeft="80dp"

    以定位 X 为例。

    【讨论】:

      【解决方案3】:

      MainActivity.java 中将Activity 更改为AppCompactActivity

      【讨论】:

        猜你喜欢
        • 2018-03-27
        • 1970-01-01
        • 2020-04-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-30
        • 1970-01-01
        相关资源
        最近更新 更多