0

我的应用程序中有网格视图日历。但是我的网格视图没有获得不同屏幕尺寸的完整视图。它只显示页面查看的一半而不是完整视图。所以我试图静态设置行项目的高度和宽度在我的 row.xml 文件中基于不同的屏幕尺寸(Mdpi,Hdpi,Xhdpi)。这将在某些类型的屏幕尺寸而不是所有屏幕尺寸中正常工作。那么我该如何解决这个问题......

网格布局:

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout
    android:id="@+id/gridheader"
    android:layout_width="fill_parent"
    android:layout_height="40dp"
    android:background="@drawable/buttonframe"
    android:orientation="horizontal" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="left" >

        <TextView
            android:id="@+id/gridprevious"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"
            android:clickable="true"
            android:drawableLeft="@drawable/calendar_previous"
            android:gravity="center_horizontal"
            android:padding="5dp"
            android:textColor="@color/white"
            android:textSize="14sp"
            android:textStyle="bold" />
    </LinearLayout>

    <TextView
        android:id="@+id/gridtitle"
        android:layout_width="wrap_content"
        android:layout_height="40dp"
        android:layout_centerHorizontal="true"
        android:gravity="center"
        android:textColor="#939598"
        android:textSize="15sp"
        android:textStyle="bold" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_toRightOf="@+id/title"
        android:gravity="right" >

        <TextView
            android:id="@+id/gridnext"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_marginRight="10dp"
            android:clickable="true"
            android:drawableRight="@drawable/calendar_next"
            android:gravity="center_horizontal"
            android:padding="5dp"
            android:paddingLeft="5dp"
            android:textColor="@color/white"
            android:textSize="14sp"
            android:textStyle="bold" />
    </LinearLayout>
</RelativeLayout>

<RelativeLayout
    android:id="@+id/layoutidDays"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="left" >

        <TextView
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".08"
            android:background="#666666"
            android:gravity="center"
            android:text="@string/sunday" />

        <TextView
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".08"
            android:background="#666666"
            android:gravity="center"
            android:text="@string/monday" />

        <TextView
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".08"
            android:background="#666666"
            android:gravity="center"
            android:text="@string/tuesday" />

        <TextView
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".08"
            android:background="#666666"
            android:gravity="center"
            android:text="@string/wednesday" />

        <TextView
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".08"
            android:background="#666666"
            android:gravity="center"
            android:text="@string/thursday" />

        <TextView
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".08"
            android:background="#666666"
            android:gravity="center"
            android:text="@string/friday" />

        <TextView
            android:layout_width="0dip"
            android:layout_height="wrap_content"
            android:layout_weight=".08"
            android:background="#666666"
            android:gravity="center"
            android:text="@string/saturday" />
    </LinearLayout>
</RelativeLayout>

<LinearLayout
    android:id="@+id/gridlayoutid"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#666666" >

    <GridView
        android:id="@+id/gridviewid"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:horizontalSpacing="1.5dp"
        android:stretchMode="columnWidth"
        android:numColumns="7"
        android:verticalSpacing="1.5dp" />
</LinearLayout>

网格行布局:(row.xml)

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="50dp"
    android:layout_height="65dp"    
    android:orientation="vertical" >

    <TextView
        android:id="@+id/griddate"
        android:layout_width="50dp"
        android:layout_height="27dp"
        android:layout_gravity="center_horizontal"
        android:gravity="center"
        android:textColor="#5C943B"
        android:textSize="17sp"
        android:textStyle="bold" >

    </TextView>

    <TextView
        android:id="@+id/gridstatusRemainTask"
        android:layout_width="50dp"
        android:layout_height="19dp"
        android:textColor="#FF0000"
        android:textStyle="bold"
        android:layout_gravity="center_horizontal"
        android:layout_marginRight="2dp"
        android:gravity="center"
        android:textSize="15sp" />

    <TextView
        android:id="@+id/gridstatusFinishTask"
        android:layout_width="50dp"
        android:layout_height="19dp"
        android:textColor="#00AEEF"
        android:textStyle="bold"
        android:layout_gravity="center_horizontal"
        android:layout_marginRight="2dp"
        android:gravity="center"
        android:textSize="15sp" />

</LinearLayout>

我的布局视图: 在此处输入图像描述

我想以以下方式输出。

在此处输入图像描述

4

2 回答 2

1

设置GridView 的布局heightwidth

        android:layout_width="fill_parent"
        android:layout_height="fill_parent"

然后,设置heightwidth你的GridViewtofill_parent为好。希望这有效。

检查以下链接并修改您的Xml文件。由于您使用的代码很难理解。heightwidth轻松设置 GridView 。

Android 日历示例

于 2013-12-23T11:13:06.950 回答
0

而不是使用线性布局尝试相对布局:

 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="90dp"
    android:layout_height="90dp"
    android:background="@color/reaction_color_selected">
    <TextView
        android:id="@+id/num_events_per_day"
        style="@style/calendar_event_style"
        android:layout_gravity="right"
        android:text="1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
    </TextView>

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:text="New York" />

</RelativeLayout>
于 2013-07-24T05:34:34.020 回答