Интерфейс приложения отличается в Android Studio и Emulator - PullRequest
0 голосов
/ 20 апреля 2020

Android Новичок в разработке приложений здесь. Я создал простое приложение, которое конвертирует мили в мили и наоборот. Проблема, кажется, с интерфейсом. Интерфейс для Activity_main. xml выглядит следующим образом:

Интерфейс на Android Студийный компилятор

Но как только я эмулирую его на эмуляторе Nexus 6 API 29, это выглядит странно и не работает должным образом. Пробовал и на эмуляторе Nexus 5, такая же проблема. Вот скриншот:

Nexus 6 API 29 Emulator

Более того, когда я пытался установить файл apk на свой Samsung Note 8, он не устанавливается, даже после изменить настройки и разрешить установку неизвестных приложений. Пожалуйста помоги.

1 Ответ

0 голосов
/ 20 апреля 2020

Судя по первому скриншоту (красные значки предупреждений в окне "Дерево компонентов"), проблема заключается в том, что Вы не ограничивали свои виды.
При использовании ConstraintLayout Вы не можете просто "разместить" виды в редакторе, они должны быть ограничены чем-то, чтобы отображаться в нужном месте.
Например: Ваша кнопка с текстом «Преобразовать мили в километры» должна быть ограничена следующим образом:

  • слева от родителя left
  • справа от родителя right
  • вверху до EditText над ним или до TextView "KMs".

Но другие представления также должны быть ограничены, чтобы получить желаемое поведение.
Вы можете прочитать о ConstraintLayout и о том, как использовать его в этом руководстве, из официальной документации: https://developer.android.com/training/constraint-layout

...