2016-06-14 3 views
47

Я получаю следующую ошибку, и я пользуюсь Android studio 2.2 Preview 3. Я искал Google, но не смог найти никаких ресурсов.Этот вид не ограничен

Error: This view is not constrained, it only has design time positions, so it will jump to (0,0) unless you add constraints 

enter image description here

<TextView 
     android:layout_width="384dp" 
     android:layout_height="207dp" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:text="@string/calc_default_display" 
     android:id="@+id/textView" 
     android:background="#ffffff" 
     android:layout_margin="0dp" 
     android:gravity="bottom|end" 
     android:textSize="70sp" 
     android:nestedScrollingEnabled="false" 
     android:maxLines="2" 
     android:maxLength="17" 
     tools:layout_editor_absoluteX="0dp" 
     tools:layout_editor_absoluteY="0dp" /> 

ответ

3

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

115

Чтобы быстро решить эту проблему, используйте этот очень полезный ярлык в Android Studio:

правой кнопкой мыши виджет-в-вопрос> Constraint Layout> Infer Ограничения:

enter image description here

После этого, вы можете настроить ограничения, как описано здесь: https://stackoverflow.com/a/37960888/5556250

Обновление

Это не подходит для Android Studio v3 и выше. В соответствии с @purpleladydragons's comment:

«Макет Constraint» не находится в выпадающем меню. Используйте значок волшебной палочки в меню панели инструментов над предварительным просмотром проекта; есть кнопка «Infer Constraints».

+2

Спасибо большое за ваше решение, я абсолютный новичок, я понятия не имел, что было не так с отличным решением позиции виджет –

+1

хотя я хочу Android Studio просто сохранит позиции от get go, а не временные позиции. Лучше вопрос, почему Google подумал, что неплохо хранить позицию только во время работы? Это ненужный шаг, чтобы заставить разработчиков нажимать на вывод позиции. – Antony

+0

Большое спасибо! Очень полезно – Paul

6

Щелкните правой кнопкой мыши в то проектировании часть от этого компонента, в котором вы получили сообщение об ошибке и выполните следующие действия:

  • [напр. если ошибка происходит в Plain Text]

[1]

Plain Text Constraint Layout> Infer Ограничения:

наконец ошибка пошла

8

вы можете попробовать это: 1. убедитесь, что вы добавили: компилировать 'com.android.support:design:25.3.1' (возможно, вы также должны добавить компиляции 'com.android.support.constraint: ограничение-макет: 1.0.2') 2. enter image description here

3.click в Infer Ограничений, надеюсь, что это может помочь вам.

21

Solution

Просто нажмите эту и она будет решена

Смежные вопросы