2014-02-17 67 views
0

我想在android中設計一個佈局。我的問題是正方形,即(a,b,c,d,e,f),我將能夠使它們在垂直方向上相互重合,但是如何將水平方向上的精確長度縮放爲這將因設備而異,我希望他們每個人都是正方形?任何幫助將不勝感激。在此先感謝我的Android應用程序的佈局問題

+3

發表您的xml文件.... –

回答

1
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" > 

<LinearLayout 
    android:id="@+id/header" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:background="@drawable/header_gradient" 
    android:paddingBottom="5dip" 
    android:paddingTop="5dip" > 

    <!-- Logo Start --> 

    <ImageView 
     android:layout_width="160dp" 
     android:layout_height="40dp" 
     android:layout_weight="0.01" 
     android:contentDescription="@string/logo" 
     android:src="@drawable/your_logo" /> 

    <TextView 
     android:id="@+id/txtlogout" 
     android:layout_width="wrap_content" 

     android:layout_height="wrap_content" 
     android:layout_marginLeft="10dp" 
     android:layout_marginRight="10dp" 
     android:layout_weight="1" 
     android:drawableRight="@drawable/log_off_new" /> 

    <!-- Logo Ends --> 
</LinearLayout> 

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_margin="3dp" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:baselineAligned="false" 
     android:orientation="horizontal" > 

     <RelativeLayout 
      android:id="@+id/trips_layout" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_margin="6dp" 
      android:layout_weight="1" 
      android:padding="5dp" > 

      <TextView 
       android:id="@+id/trips" 
       style="@style/DashboardButton" 
       android:layout_centerInParent="true" 
       android:drawableTop="@drawable/trip_icon" 
       android:text="@string/icon_label_trips" /> 
     </RelativeLayout> 

     <RelativeLayout 
      android:id="@+id/locate_centres_layout" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_margin="6dp" 
      android:layout_weight="1" 
      android:padding="5dp" > 

      <TextView 
       android:id="@+id/locate_centres" 
       style="@style/DashboardButton" 
       android:drawableTop="@drawable/locate_centre_icon" 
       android:text="@string/icon_label_locate_centre" /> 
     </RelativeLayout> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:baselineAligned="false" 
     android:orientation="horizontal" > 

     <RelativeLayout 
      android:id="@+id/documentation_layout" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_margin="6dp" 
      android:layout_weight="1" 
      android:padding="5dp" > 

      <TextView 
       android:id="@+id/documentation" 
       style="@style/DashboardButton" 
       android:drawableTop="@drawable/documentation_icon" 
       android:text="@string/icon_label_documentation" /> 
     </RelativeLayout> 

     <RelativeLayout 
      android:id="@+id/mySchedule_layout" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_margin="6dp" 
      android:layout_weight="1" 
      android:padding="5dp" > 

      <TextView 
       android:id="@+id/mySchedule" 
       style="@style/DashboardButton" 
       android:drawableTop="@drawable/schedule_icon" 
       android:text="@string/icon_label_my_schedule" /> 
     </RelativeLayout> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:baselineAligned="false" 
     android:orientation="horizontal" > 

     <RelativeLayout 
      android:id="@+id/Cust_Mgmt_layout" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_margin="6dp" 
      android:layout_weight="1" 
      android:padding="5dp" > 

      <TextView 
       android:id="@+id/Cust_Mgmt" 
       style="@style/DashboardButton" 
       android:drawableTop="@drawable/customer_icon" 
       android:text="@string/icon_label_customer_management" /> 
     </RelativeLayout> 

     <RelativeLayout 
      android:id="@+id/settings_layout" 
      android:layout_width="0dp" 
      android:layout_height="fill_parent" 
      android:layout_margin="6dp" 
      android:layout_weight="1" 
      android:padding="5dp" > 

      <TextView 
       android:id="@+id/settings" 
       style="@style/DashboardButton" 
       android:drawableTop="@drawable/settings_icon" 
       android:text="@string/icon_label_settings" /> 
     </RelativeLayout> 
    </LinearLayout> 
</LinearLayout> 

試試這個

實施和檢查

+0

Atish您好,感謝您的答覆,但在此佈局你將整個寬度分爲兩部分,我所要求的是例如屏幕高度爲6英寸,寬度爲4英寸,如果我將堆疊6個盒子放在另一個之上,每個盒子高度爲1英寸,並佔據整個高度。現在堆疊的寬度也應該是1英寸,因此3英寸的寬度留在一堆盒子的旁邊 – Rajeev

+0

這可以通過添加空白視圖並將其重量等於盒子的重量之和來實現 –