2014-02-16 24 views
0

我無法在我的Android項目上加寬按鈕。我只有一個問題。按鈕不加寬

這就是我得到

enter image description here

這就是我想要

enter image description here

只有按鈕。這是我的XML相應的問題。

<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:background="#4ECDC4" 
tools:context=".MainActivity" > 

<RelativeLayout 
    android:id="@+id/rlSignInForm" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/rlSignInTitle" 
    android:layout_marginLeft="20dp" 
    android:layout_marginRight="20dp" 
    android:layout_marginTop="36dp" > 

    <LinearLayout 
     android:id="@+id/llSignInBody" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:background="#FFFFFF" 
     android:focusable="true" 
     android:focusableInTouchMode="true" 
     android:orientation="vertical" 
     android:visibility="visible" 
     android:weightSum="2" > 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_margin="20dp" 
      android:layout_weight="1" > 

      <ImageView 
       android:id="@+id/ivEmailIcon" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:src="@drawable/email_icon" 
       android:contentDescription="@null" 
       android:layout_alignBottom="@+id/etSignInEmail" 
       android:layout_marginBottom="2dp"/> 

      <EditText 
       android:id="@+id/etSignInEmail" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:background="@null" 
       android:layout_toRightOf="@+id/ivEmailIcon" 
       android:layout_marginLeft="10dp" 
       android:gravity="bottom" 
       android:hint="@string/email" 
       android:inputType="textEmailAddress" 
       android:textColor="@android:color/black" 
       android:textSize="18sp" /> 
     </RelativeLayout> 

     <View 
      android:layout_width="match_parent" 
      android:layout_height="1dp" 
      android:background="@drawable/sign_in_divider" /> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_margin="20dp" 
      android:layout_weight="1" > 

      <ImageView 
       android:id="@+id/ivPasswordIcon" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:src="@drawable/password_icon" 
       android:contentDescription="@null" 
       android:layout_alignBottom="@+id/etSignInPassword" 
       android:layout_marginBottom="3dp"/> 

      <EditText 
       android:id="@+id/etSignInPassword" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:background="@null" 
       android:layout_toRightOf="@+id/ivPasswordIcon" 
       android:layout_marginLeft="10dp" 
       android:gravity="bottom" 
       android:hint="@string/password" 
       android:inputType="textPassword" 
       android:textColor="@android:color/black" 
       android:textSize="18sp" /> 
     </RelativeLayout> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/llSignUpBody" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:background="#FFFFFF" 
     android:focusable="true" 
     android:focusableInTouchMode="true" 
     android:orientation="vertical" 
     android:visibility="visible" 
     android:weightSum="3" > 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_margin="20dp" 
      android:layout_weight="1" > 

      <ImageView 
       android:id="@+id/ivUserNameIcon" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:src="@drawable/username_icon" 
       android:contentDescription="@null" 
       android:layout_alignBottom="@+id/etSignUpName"/> 

      <EditText 
       android:id="@+id/etSignUpName" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:layout_marginLeft="10dp" 
       android:layout_toRightOf="@+id/ivUserNameIcon" 
       android:background="@null" 
       android:gravity="bottom" 
       android:hint="@string/username" 
       android:singleLine="true" 
       android:textColor="@android:color/black" 
       android:textSize="18sp" /> 

     </RelativeLayout> 

     <View 
      android:layout_width="match_parent" 
      android:layout_height="1dp" 
      android:background="@drawable/sign_in_divider" /> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_margin="20dp" 
      android:layout_weight="1" > 

      <ImageView 
       android:id="@+id/ivEmailIcon" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:src="@drawable/email_icon" 
       android:contentDescription="@null" 
       android:layout_alignBottom="@+id/etSignUpEmail" 
       android:layout_marginBottom="2dp"/> 

      <EditText 
       android:id="@+id/etSignUpEmail" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:layout_marginLeft="10dp" 
       android:layout_toRightOf="@+id/ivEmailIcon" 
       android:background="@null" 
       android:gravity="bottom" 
       android:hint="@string/email" 
       android:inputType="textEmailAddress" 
       android:textColor="@android:color/black" 
       android:textSize="18sp" /> 

     </RelativeLayout> 

     <View 
      android:layout_width="match_parent" 
      android:layout_height="1dp" 
      android:background="@drawable/sign_in_divider" /> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_margin="20dp" 
      android:layout_weight="1" > 

      <ImageView 
       android:id="@+id/ivPasswordIcon" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:src="@drawable/password_icon" 
       android:contentDescription="@null" 
       android:layout_alignBottom="@+id/etSignUpPassword" 
       android:layout_marginBottom="3dp"/> 

      <EditText 
       android:id="@+id/etSignUpPassword" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:layout_marginLeft="10dp" 
       android:layout_toRightOf="@+id/ivPasswordIcon" 
       android:background="@null" 
       android:gravity="bottom" 
       android:hint="@string/password" 
       android:inputType="textPassword" 
       android:textColor="@android:color/black" 
       android:textSize="18sp" /> 

     </RelativeLayout> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/llForgotPasswordBody" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:background="#FFFFFF" 
     android:focusable="true" 
     android:focusableInTouchMode="true" 
     android:orientation="vertical" 
     android:weightSum="2" 
     android:visibility="gone" > 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="0dip" 
      android:layout_margin="20dp" 
      android:layout_weight="1" > 

      <ImageView 
       android:id="@+id/ivEmailIcon" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:src="@drawable/email_icon" 
       android:contentDescription="@null" 
       android:layout_alignBottom="@+id/etForgotPasswordEmail" 
       android:layout_marginBottom="2dp"/> 

      <EditText 
       android:id="@+id/etForgotPasswordEmail" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:background="@null" 
       android:layout_toRightOf="@+id/ivEmailIcon" 
       android:layout_marginLeft="10dp" 
       android:gravity="bottom" 
       android:hint="@string/email" 
       android:inputType="textEmailAddress" 
       android:textColor="@android:color/black" 
       android:textSize="18sp" /> 
     </RelativeLayout> 
    </LinearLayout> 
</RelativeLayout> 

<Button 
    android:id="@+id/btnForgotPassword" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignRight="@+id/rlSignInForm" 
    android:layout_below="@+id/rlSignInForm" 
    android:layout_marginRight="5dp" 
    android:layout_marginTop="5dp" 
    android:background="@null" 
    android:text="@string/forgot_password" 
    android:textColor="#FFFFFF" 
    android:textSize="14sp" /> 

<Button 
    android:id="@+id/btnSendPassword" 
    android:layout_width="175dp" 
    android:layout_height="55dp" 
    android:layout_below="@+id/rlSignInTitle" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="180dp" 
    android:background="@drawable/rounded_rect_positive_selector" 
    android:gravity="center" 
    android:text="@string/SEND_PASSWORD" 
    android:textColor="@android:color/white" 
    android:textStyle="bold" 
    android:width="175dp" 
    android:height="55dp" 
    android:visibility="gone" /> 

<Button 
    android:id="@+id/btnActive" 
    android:layout_width="175dp" 
    android:layout_height="55dp" 
    android:layout_alignLeft="@+id/btnInactive" 
    android:layout_alignRight="@+id/rlSignInForm" 
    android:layout_below="@+id/rlSignInTitle" 
    android:layout_marginTop="280dp" 
    android:background="#AD5BDB" 
    android:gravity="center" 
    android:text="@string/SIGN_IN" 
    android:textColor="@android:color/white" 
    android:textSize="22sp" 
    android:textStyle="bold" 
    android:visibility="visible" /> 

<Button 
    android:id="@+id/btnInactive" 
    style="@style/AppTheme" 
    android:layout_width="175dp" 
    android:layout_height="55dp" 
    android:layout_alignLeft="@+id/rlSignInForm" 
    android:layout_alignRight="@+id/rlSignInForm" 
    android:layout_below="@+id/btnActive" 
    android:layout_marginTop="14dp" 
    android:background="#AD58DB" 
    android:gravity="center" 
    android:text="@string/SIGN_UP" 
    android:textColor="@android:color/white" 
    android:textSize="22sp" 
    android:textStyle="bold" 
    android:visibility="visible" /> 

<RelativeLayout 
    android:id="@+id/rlNoInternetNotification" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/rlSignInTitle" 
    android:visibility="gone" > 

    <include layout="@layout/no_internet_notification" /> 
</RelativeLayout> 

<RelativeLayout 
    android:id="@+id/rlPushNotification" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/rlSignInTitle" 
    android:visibility="gone" > 

    <include layout="@layout/push_notification" /> 
</RelativeLayout> 

<RelativeLayout 
    android:id="@+id/rlSignInTitle" 
    android:layout_width="match_parent" 
    android:layout_height="44dp" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:layout_marginTop="30dp" 
    android:background="#4ECDC4" > 

    <com.cloverstudio.spika.view.MyriadProTextView 
     android:id="@+id/tvSignInTitle" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerHorizontal="true" 
     android:layout_centerVertical="true" 
     android:text="@string/SIGN_IN" 
     android:textColor="@android:color/white" 
     android:textSize="26sp" /> 
</RelativeLayout> 

</RelativeLayout> 

越小按鈕btnSendPassword和另一個按鈕是btnActive。我試過玩寬度但沒有改變。我相當新,所以任何解釋爲什麼發生這將是很好的,所以然後我知道什麼是錯誤的,如果它再次發生。任何幫助將是美好的。

回答

1

您應該將您的btnSendPassword按鈕與rlSignInForm左右對齊......然後您將達到您的要求。將btnSendPassword的以下XML片段替換爲btnSendPassword的現有XML片段...您將解決所有問題。

<Button 
    android:id="@+id/btnSendPassword" 
    android:layout_width="175dp" 
    android:layout_height="55dp" 
    android:layout_below="@+id/rlSignInTitle" 
    android:layout_alignLeft="@+id/rlSignInForm" 
    android:layout_alignRight="@+id/rlSignInForm" 
    android:layout_marginTop="180dp" 
    android:background="@drawable/rounded_rect_positive_selector" 
    android:gravity="center" 
    android:text="@string/SEND_PASSWORD" 
    android:textColor="@android:color/white" 
    android:textStyle="bold" 
    android:visibility="gone" /> 
+0

你不應該硬編碼佈局的寬度和高度,它可以改變不同分辨率的設備到設備。 –

+0

這不是我的想法......我只是給問題的解決方案。 –

+0

那麼你還沒有給出一個適當的和通用的解決方案! –

0

設置android:layout_width =「match_parent」。這應該可以解決你的問題。

+0

然後橫向伸展到兩端。 – Anonymous

+0

在底部添加。根據您發佈的上述佈局xml代碼,父項未關閉。 –

+0

完成。仍然是相同的問題 – Anonymous