Как установить поле макета на Android Studio 3.4?

Пытаюсь сделать это учебник по андроиду,

Drag a Plain Text (EditText) element from the Palette pane to the bottom of the layout, and add constraints to the left side of the layout, the bottom of the layout, and the left side of the Send Button. Set its attributes in the Attributes pane as follows: Attribute

Value

id editText_main

Right margin 8

Left margin 8

Bottom margin 16

Но я не вижу способа установить поле макета. Когда я выбираю editText_main и ввожу 8dp в layout_marginLeft и нажимаю Enter или Tab, число 8dp исчезает. Его проглотили без отрыжки.

Как установить поле макета на Android Studio 3.4?

1
0
845
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Это было не очевидно, но я щелкнул правой кнопкой мыши, а затем выбрал меню Constrain и добавил ограничения. Затем я вошел в атрибуты, и это позволило мне изменить текущее значение. Похоже на ошибку дизайна.

Я бы посоветовал вам не использовать только панель перетаскивания. Некоторые функции намного проще с помощью редактора xml.

Перейдите к вашему xml-файлу, добавьте поля, подобные этому.

<EditText
        android:layout_marginBottom = "16dp"
        android:layout_marginEnd = "8dp"
        android:layout_marginStart = "8dp" />

но в учебнике сказано установить его на панели «Атрибуты». Set its attributes in the Attributes pane as follows: Attribute

likejudo 20.06.2019 19:37

Это не ошибка, дочерний макет с ограничениями НЕ МОЖЕТ иметь дочерний элемент с полями, потому что он имеет заданную позицию (если вы просто перетащите его из палитры), позиция не изменится, несмотря ни на что, поэтому добавление полей бесполезно, когда его ограничение этих полей становится полезным, потому что, скажем, я ограничиваю кнопку слева, но я не хочу, чтобы она была полностью слева, поэтому давайте добавим marginLeft 8 dp, в этом случае уместно иметь поле, поэтому редактор не позволял вам добавлять их, пока вы не ограничили его.

Вы можете увидеть это на вкладке «Текст», позиция абсолютна, поля бесполезны, когда позиция абсолютна. Таким образом, редактор не позволяет вам их добавлять.

Всякий раз, когда вы добавляете к нему ограничение, редактор избавляется от абсолютной позиции и позволяет вам добавлять поля.

Возможно, в вашем учебнике не указано, какой макет использовать, поскольку он не имел значения, пока не был реализован макет ограничения.

it is not a bug но просто проглотить текст и заставить его исчезнуть без объяснения причин вряд ли можно назвать хорошим дизайном инструмента пользовательского интерфейса.
likejudo 20.06.2019 19:45

Да, но это все еще не ошибка, а предполагаемая функция. Если пользователь знает, какой макет он использует, это никогда не должно быть проблемой. Хотя было бы неплохо, если бы было сообщение, сообщающее, почему это происходит, но сам пользовательский интерфейс не предназначен для обучения новых пользователей.

ivan 20.06.2019 19:47

Другие вопросы по теме