2013-07-23 2 views
0

У меня есть эта активность, и мне нужно прекратить заполнять всю ширину текста и кнопки. В настоящее время они показаны в центре, но заполняются всей шириной. Как остановить это и сделать ширину фиксированной? См. Схему ниже.Как остановить макет из всей ширины

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="1280dp" 
    android:layout_height="match_parent" 
    android:gravity="center_vertical|center_horizontal" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context=".Login" > 

    <TextView 
     android:id="@+id/lblUserName" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_centerHorizontal="true" 
     android:text="@string/UserName" /> 

    <EditText 
     android:id="@+id/txt4UserName" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/lblUserName" 
     android:layout_below="@+id/lblUserName" 
     android:ems="10" 
     android:inputType="text|textFilter|textNoSuggestions" > 

     <requestFocus /> 
    </EditText> 

    <TextView 
     android:id="@+id/lblPassword" 
     android:layout_width="300dp" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/lblUserName" 
     android:layout_below="@+id/txt4UserName" 
     android:layout_marginTop="20dp" 
     android:text="@string/Password" /> 

    <EditText 
     android:id="@+id/txt4Password" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/lblPassword" 
     android:layout_below="@+id/lblPassword" 
     android:ems="10" 
     android:inputType="textPassword" /> 

    <Button 
     android:id="@+id/btnForLogin" 
     style="?android:attr/buttonStyleSmall" 
     android:layout_width="50dip" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/txt4Password" 
     android:layout_alignRight="@+id/txt4Password" 
     android:layout_below="@+id/txt4Password" 
     android:layout_marginTop="30dp" 
     android:maxLength="50" 
     android:onClick="Verification" 
     android:text="@string/Login" /> 

</RelativeLayout> 

Обязательно выделена красным enter image description here

ответ

1

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

<RelativeLayout 
... 
android:layout_width="wrap_content" 
...> 

or 

<RelativeLayout 
... 
android:layout_marginLeft="someValue" 
android:layout_marginRight="someValue" 
...> 
0

Вы упомянули

android:layout_width="1280dp"

в вашей относительной макете

набор его

android:layout_width="wrap_content" 

и в обоих edittexts вы указали layout_width, как fill_parent .. Я думаю, что это является причиной проблемы

попробуйте установить ширину EditText на то, что вы хотите или просто wrap_content

, а затем макет не будет занимать весь экран

+0

я изменился, но все тот же – abdul

+0

попытаться очистить и построить ваш проект .. – Shruti

0

Измените ширину вашего EditText на wrap_content & на ширину RelativeLayout до match_parent.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="center_vertical|center_horizontal" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    tools:context=".Login" > 

<EditText 
     android:id="@+id/txt4UserName" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignLeft="@+id/lblUserName" 
     android:layout_below="@+id/lblUserName" 
     android:ems="10" 
     android:inputType="text|textFilter|textNoSuggestions" > 



<EditText 
    android:id="@+id/txt4Password" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignLeft="@+id/lblPassword" 
    android:layout_below="@+id/lblPassword" 
    android:ems="10" 
    android:inputType="textPassword" /> 
0

Я думаю, вы могли бы использовать

android:layout_centerInParent="true" 

в вашей относительной макете

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