2013-10-16 40 views
0

我在LinearLayout中有一个GridLayout。图标是45像素x 45像素。当我在240 x 400屏幕上测试UI时,只显示8行中的一半。GridLayout不适合240 x 400屏幕

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/chooseSign" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="@color/bg_grey"  
android:orientation="vertical" 
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=".ViewReadingActivity" > 

<TextView 
    android:id="@+id/chooseYourSign"   
    android:gravity="center_horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/choose_rathi" 
    android:textColor="@color/green" 
    android:textSize="25sp" /> 

<GridLayout 
    android:id="@+id/signs" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:columnCount="5" 
    android:orientation="horizontal" 
    android:rowCount="8" > 

    <ImageView 
     android:id="@+id/iAries" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/aries" 
     android:src="@drawable/aries" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <ImageView 
     android:id="@+id/iTaurus" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/taurus" 
     android:src="@drawable/taurus" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <ImageView 
     android:id="@+id/iGemini" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/gemini" 
     android:src="@drawable/gemini" /> 

    <TextView 
     android:id="@+id/aries" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/aries" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <TextView 
     android:id="@+id/taurus" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/taurus" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <TextView 
     android:id="@+id/gemini" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/gemini" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <ImageView 
     android:id="@+id/iCancer" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/cancer" 
     android:src="@drawable/cancer" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <ImageView 
     android:id="@+id/iLeo" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/leo" 
     android:src="@drawable/leo" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <ImageView 
     android:id="@+id/iVirgo" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/virgo" 
     android:src="@drawable/virgo" /> 

    <TextView 
     android:id="@+id/cancer" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/cancer" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <TextView 
     android:id="@+id/leo" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/leo" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <TextView 
     android:id="@+id/virgo" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/virgo" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <ImageView 
     android:id="@+id/iLibra" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/libra" 
     android:src="@drawable/libra" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <ImageView 
     android:id="@+id/iScorpio" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/scorpio" 
     android:src="@drawable/scorpio" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <ImageView 
     android:id="@+id/iSagittarius" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/sagittarius" 
     android:src="@drawable/sagittarius" /> 

    <TextView 
     android:id="@+id/libra" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/libra" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <TextView 
     android:id="@+id/scorpio" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/scorpio" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <TextView 
     android:id="@+id/sagittarius" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/sagittarius" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <ImageView 
     android:id="@+id/iCapricorn" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/capricorn" 
     android:src="@drawable/capricorn" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <ImageView 
     android:id="@+id/iAquarius" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/aquarius" 
     android:src="@drawable/aquarius" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <ImageView 
     android:id="@+id/iPisces" 
     android:layout_width="50dp" 
     android:layout_gravity="center_horizontal" 
     android:contentDescription="@string/pisces" 
     android:src="@drawable/pisces" /> 

    <TextView 
     android:id="@+id/capricorn" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/capricorn" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <TextView 
     android:id="@+id/aquarius" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/aquarius" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 

    <Space 
     android:layout_width="5dp" 
     android:layout_columnSpan="1" /> 

    <TextView 
     android:id="@+id/pisces" 
     android:layout_gravity="center_horizontal|top" 
     android:text="@string/pisces" 
     android:textColor="@color/green" 
     android:textSize="14sp" /> 
</GridLayout> 

Android screen

什么样的变化,我需要做这样的布局适合屏幕?

+0

,如果你认为我的答案是正确的自动适应,可以请你把我的答案是公认的答案........ :) –

+0

我还在测试你的答案。 –

+0

为图像视图创建单独的xml,然后使用网格视图中的适配器显示它 –

回答

1

这样使用网格视图,它会根据屏幕大小

<GridView 
       android:id="@+id/grid_view" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:columnWidth="90dp" 
       android:gravity="center" 
       android:layout_marginLeft="5dp" 
       android:layout_marginRight="5dp" 
       android:horizontalSpacing="10dp" 
       android:numColumns="auto_fit" 
       android:stretchMode="columnWidth" 
       android:scrollingCache="false" 
       android:animationCache="false" 
       android:fastScrollEnabled="true" 
       android:verticalSpacing="10dp" /> 
+0

公平地说,尽管这不是我的经理正在寻找的答案,但您的方法仍然有效。我正在为适用于中高分辨率设备的应用程序开发低分辨率设备的布局文件,因此我无权更改活动文件。无论如何感谢您的回答。当我必须开发网格布局时,我可以使用你的技术。 –