[Resolvido]Como posicionar os TextView e EditText no emulador ?

Bom dia a todos,

Sou iniciante no Android e estou utulizando o Android Studio.

Estou criando uma tela, na qual preciso posicionar 2 (dois) TextView’s e 2 (dois) EditText’s. Faço isso por linhas de código e fica tudo bem de acordo o a guia Design do activity.main.xml, entretanto quando rodo o aplicativo no emulador, fica tudo sobrepostos! :frowning:

Por favor, alguém saberia dizer por que isso ocorre ???

Agradeço desde já!

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<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:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_vertical"
    android:orientation="vertical"
    android:padding="16dp"
    tools:context="com.example.utilizador.myquartaapp.MainActivity">

    <TextView
        android:layout_width="87dp"
        android:layout_height="20dp"
        android:text="@string/usuario"
        tools:layout_editor_absoluteY="5dp"
        tools:layout_editor_absoluteX="20dp" />

    <EditText android:id="@+id/tLogin"
        android:layout_width="87dp"
        android:layout_height="20dp"
        android:inputType="text"
        android:maxLines="1"
        tools:layout_editor_absoluteY="30dp"
        tools:layout_editor_absoluteX="20dp" />

    <TextView
        android:layout_width="87dp"
        android:layout_height="20dp"
        android:text="@string/senha"
        tools:layout_editor_absoluteY="55dp"
        tools:layout_editor_absoluteX="20dp" />

    <EditText android:id="@+id/tSenha"
        android:layout_width="87dp"
        android:layout_height="20dp"
        android:inputType="textPassword"
        android:maxLines="1"
        tools:layout_editor_absoluteY="80dp"
        tools:layout_editor_absoluteX="20dp" />

</android.support.constraint.ConstraintLayout>

Guia Design do activity_main.xml no Android Studio

No emulador do Visual Studio

Por alguma razão que ainda vou descobrir, a última versão do android studio traz como padrão o layout ConstraintLayout. Altere para RelativeLayout e você conseguirá.
Ainda não descobri como utilizar este novo padrão. Se alguém souber, também me ajudará.

@Luis_Augusto_Santos

Valeu pela dica, amigão!

Alterei para RelativeLayout, mas o problema persistiu, então re-alterei para LinearLayout e resolveu!

Foi muito bom você ter chamado à atenção para o novo layout ConstraintLayout!

Obrigado!!!

O código, então, fica assim:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    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="wrap_content"
    android:gravity="center_vertical"
    android:orientation="vertical"
    android:padding="16dp"
    tools:context="com.example.utilizador.Layout.MainActivity">

    <TextView
        android:layout_width="87dp"
        android:layout_height="20dp"
        android:text="@string/usuario"
        tools:layout_editor_absoluteY="5dp"
        tools:layout_editor_absoluteX="20dp" />

    <EditText android:id="@+id/tLogin"
        android:layout_width="87dp"
        android:layout_height="20dp"
        android:inputType="text"
        android:maxLines="1"
        tools:layout_editor_absoluteY="30dp"
        tools:layout_editor_absoluteX="20dp" />

    <TextView
        android:layout_width="87dp"
        android:layout_height="20dp"
        android:text="@string/senha"
        tools:layout_editor_absoluteY="55dp"
        tools:layout_editor_absoluteX="20dp" />

    <EditText android:id="@+id/tSenha"
        android:layout_width="87dp"
        android:layout_height="20dp"
        android:inputType="textPassword"
        android:maxLines="1"
        tools:layout_editor_absoluteY="80dp"
        tools:layout_editor_absoluteX="20dp" />

</LinearLayout>

No emulador:

1 curtida

@cjbl, eu tive problema parecido, estou fazendo um curso online, usava uma versão e resolvi (estupidamente) atualizar para a mais recente. Deu pau em tudo. Aí dei uma pesquisava e percebi onde tava o erro.

Boa tarde, como também estou iniciando, ainda me enrolo com muita coisa, atualizei e tava sofrendo pra ajustar o layout. Acabei retornando para versão anterior. Se alguém puder explicar como deixa direto no RelativeLayout, agradeceria.

Sobre o LinearLayout e o RelativeLayout, a diferença é que você precisa definir uma referência quando utiliza o RelativeLayout, normalmente o primeiro componente já faz isso de forma automática e os demais são posicionados de acordo com a posição do primeiro.
Eu comecei a mexer mesmo com android há menos de 2 meses.

Valeu mais uma vez!

Eu comecei a estudar android este mês corrente. Ainda estou muito no início.

Tem como configurar por default o Relative no AS 2.3 ?

No constraintLayout você tem que ancorar os componentes da tela. Isso é feito clicando nos circulos que ficam nas laterias e nas partes de cima e de baixo. Você pode ancorar um componente no outro ou nas lateriais da propria tela. Eu prefiro dessa ultima forma. Depois que você se acostuma até que fica legal.

1 curtida

@Klaus_Wolfgram,

Muito agradecido pela informação, Klaus!

Valeu!!!

eu estou com o mesmo problema dá pra alguém me ajudar meu face é joelckson assunção de jesus

aqui é a imagem do meu problema

Como o colega disse, na nova versão você tem que ancorar os componentes. Você pode fazer manualmente como o colega ensinou ou pode clicar no ícone marcado na imagem abaixo que ele faz isso automaticamente.constraint

Bom dia!

Não acredito que perdi tempo quebrando a cabeça com isso , hehe.

Obrigado Marcelo Portela. ajudou de mais.