如何从布局约束部分的第一个应用程序Android教程中取消阻止

如何从布局约束部分的第一个应用程序Android教程中取消阻止,android,Android,我试着按照这里的教程,我已经发现在描述和我的经验之间有一个不一致的地方。我被告知添加一个纯文本元素,应该会看到这一点 当我真的看到这个的时候: 这是非常痛苦的,因为我试图哄骗设计视图显示editText位,但没有效果,我被迫添加一个约束,将按钮标签对齐到编辑文本字段的顶部,而不是文本可能位于的位置,如图所示 编辑:我在最初的帖子中粘贴了错误的图片,没有包含按钮,只是更正了它 EDIT2:我最初遇到的问题是Intellij IDEA,所以我安装了Android Studio,看看这是否能解决问题

我试着按照这里的教程,我已经发现在描述和我的经验之间有一个不一致的地方。我被告知添加一个纯文本元素,应该会看到这一点

当我真的看到这个的时候:

这是非常痛苦的,因为我试图哄骗设计视图显示editText位,但没有效果,我被迫添加一个约束,将按钮标签对齐到编辑文本字段的顶部,而不是文本可能位于的位置,如图所示

编辑:我在最初的帖子中粘贴了错误的图片,没有包含按钮,只是更正了它

EDIT2:我最初遇到的问题是Intellij IDEA,所以我安装了Android Studio,看看这是否能解决问题,但它似乎让事情变得更糟,如下所示,我甚至无法看到按钮的文本基线:


我认为你在正确的轨道上

按照以下步骤操作:

要在水平路线中约束视图,请创建约束 在文本基线之间。要执行此操作,请单击按钮,然后单击 编辑基线,该基线显示在设计编辑器中的 选定视图。基线定位将显示在按钮内部。点击 并按住此锚点,然后将其拖动到 将显示在文本框中

我还建议您查看文档,以便更好地了解工作原理。一旦您理解了基本概念,它就变得强大而简单

以下是工作代码:


你能添加你的.xml文件并澄清你到底想要实现什么吗?@AramSheroyan我只是简单地按照教程进行操作。我不知道我想要实现什么,教程也没能给我早期的胜利,让我继续前进。在简单的UI上,我建议使用LinearLayout。它更简单,渲染速度更快。@m0skit0虽然我认为线性布局在某些情况下性能更好,但约束布局现在是复杂布局的行业标准。这些测试并没有抓住整个画面。@RichardDapice我想你错过了我评论中的部分,当我说simple UIS时,我意识到我在预期显示按钮的位置添加了错误的图像。我刚刚更新了它。这个问题可能与我使用Intellij IDEA而不是Android Studio有关,所以我安装了Studio来排除这个问题,但我还有另一个问题。我希望严格按照教程中的说明进行操作,而不是依赖外部信息,因为我才刚刚开始,本教程是为真正的初学者准备的,我想知道我是否能获得与此需求相符的信息。我愿意对此进行研究。检查以上答案,如果它符合您问题的标准,则将其标记为答案。提出与下一期相关的后续问题。查看Udacities Android初学者课程。
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:context=".MainActivity"
    tools:showIn="@layout/activity_main">

    <EditText
        android:id="@+id/edit_text"
        android:layout_width="150dp"
        android:layout_height="45dp"
        android:layout_marginStart="16dp"
        android:layout_marginTop="16dp"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:text="Button"
        app:layout_constraintBaseline_toBaselineOf="@+id/edit_text"
        app:layout_constraintStart_toEndOf="@+id/edit_text" />

</androidx.constraintlayout.widget.ConstraintLayout>