0

Я создал макет, который показывает прекрасный результат на графическом макете, но когда я запускаю приложение, это эмулятор, который дает очень странный вид.Как указать пробелы между элементами андроида из графического макета

enter image description here

Emulator

enter image description here

Я попытался margin и Padding как, но все-таки я не получаю желаемого выхода в эмуляторе.

Следующий мой файл xml. Все завернуть в relativeLayout теге

XML File

<TextView 
    android:id="@+id/successMessage" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="14dp" 
    android:gravity="center" 
    android:text="Launch Complain" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:layout_marginBottom="50pt" 
    /> 

<Button 
    android:id="@+id/btnSendMessage" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginBottom="83dp" 
    android:gravity="center" 
    android:text="Send Message" /> 

<EditText 
    android:id="@+id/userMessage" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:layout_centerVertical="true" 
    android:ems="10" 
    android:gravity="center" 
    android:hint="Complain" 
    android:inputType="textMultiLine" > 

    <requestFocus /> 
</EditText> 

<EditText 
    android:id="@+id/txtShopName" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/userMessage" 
    android:layout_alignLeft="@+id/userMessage" 
    android:layout_marginBottom="46dp" 
    android:ems="10" 
    android:gravity="center" 
    android:hint="Shop Name" 
    android:inputType="textPersonName" /> 
+1

Я заметил, что на первом снимке экрана есть предупреждения. Что они говорят? – ryguy

+1

Вставьте весь свой код макета. Я не могу видеть родителя. Это относительная макета или что? – EliaszKubala

+0

Предупреждение говорит, Hardcoded string, Должен использовать ресурс @String – Kirmani88

ответ

1

Размещение ваших взглядов в настоящее время в значительной степени на основе позиции по отношению к центру экрана. Вам нужно размещать свои представления относительно друг друга.

Используйте андроида: layout_below = «@ + идентификатор/ITEM_ID», чтобы поместить вид снизу другой точки зрения, как это:

<TextView 
     android:id="@+id/successMessage" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" 
     android:layout_marginTop="14dp" 
     android:gravity="center" 
     android:text="Launch Complain" 
     android:textAppearance="?android:attr/textAppearanceLarge" 
     android:layout_marginBottom="50pt" 
     /> 

    <EditText 
     android:id="@+id/txtShopName" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/successMessage" 
     android:layout_marginBottom="46dp" 
     android:ems="10" 
     android:gravity="center" 
     android:hint="Shop Name" 
     android:inputType="textPersonName" /> 

    <EditText 
     android:id="@+id/userMessage" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/txtShopName" 
     android:layout_centerHorizontal="true" 
     android:ems="10" 
     android:gravity="center" 
     android:hint="Complain" 
     android:inputType="textMultiLine" > 

     <requestFocus /> 
    </EditText> 

    <Button 
     android:id="@+id/btnSendMessage" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/userMessage" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="83dp" 
     android:gravity="center" 
     android:text="Send Message" /> 
+0

Спасибо, позвольте мне попробовать – Kirmani88

+0

Я добавил вышеупомянутый код, но ничего не изменилось. Я все равно получаю тот же результат в эмуляторе – Kirmani88

+0

Вы удалили центрВертикальные детали? Я добавил пример, где я удалил код, который повлиял на вертикальное выравнивание. –

0

Это не графический вопрос, это происходит из-за клавиатуры фокусировке " EditText- complain ". Для решения этой проблемы вам нужно заманить в файле манифеста. Попробуйте

<activity 
     android:name=".Your Activity"   
     android:label="@string/title_activity_register"   
     android:windowSoftInputMode="adjustPan" > 
    </activity> 

Здесь андроида: windowSoftInputMode = "adjustPan" чесотки вопрос. For more

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