Недавно я начал изучать новый ConstraintLayout
в Android Studio 2.2 и заметил, что при добавлении простейшего из представлений редактор макета автоматически генерирует некоторые абсолютные координаты. Вот пример XML:
<android.support.constraint.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:id="@+id/activity_portfolio"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.abc.Activity"
tools:layout_editor_absoluteX="0dp"
tools:layout_editor_absoluteY="81dp">
<TextView
android:text="@string/creator_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:layout_editor_absoluteX="246dp"
tools:layout_editor_absoluteY="479dp"
android:id="@+id/first_textview"
app:layout_constraintRight_toRightOf="@+id/activity"
android:layout_marginEnd="16dp"
tools:layout_constraintRight_creator="0"
app:layout_constraintBottom_toBottomOf="@+id/activity"
android:layout_marginBottom="16dp"
tools:layout_constraintBottom_creator="0" />
</android.support.constraint.ConstraintLayout>
Обратите внимание на абсолюты, такие как 81dp
, 246dp
, 479dp
... Я попытался их вручную удалить, но когда я вернусь на вкладку "Дизайн" и вернусь на вкладку "Текст", эти регенерировать. Теперь у меня есть три вопроса:
- Есть ли способ сказать Android Studio не генерировать эти данные?
- Должен ли я вручную разместить их в
dimens.xml
? - Могут ли эти абсолюты вызывать некоторые проблемы с макетами на других устройствах?