0

对于具有以下功能的应用程序:

  • 目标:API 8 或 Android Froyo。

  • 模拟器:Android GingerBread 2.0.3。

/sdcard应用程序从应该在Gridview 布局中显示的文件中读取数据。但是,在运行时,布局在横向和纵向布局方向上是扭曲的。

布局在设计时看起来很完美,就像在 Image#1 中一样,但在运行时它就像在 Image#2 中看到的那样。

这是我用于布局的 XML landscape orientation

<LinearLayout
    android:id="@+id/LinearLayoutInside"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/button2"
    android:orientation="vertical"
    android:background="@drawable/border_bkgrnd" >
    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="3" >
            <TextView
                android:id="@+id/textView13"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/TextView12"
                android:layout_below="@+id/TextView12"
                android:onClick="newActivity"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />

            <TextView
                android:id="@+id/TextView12"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/textView11"
                android:layout_alignRight="@+id/textView11"
                android:layout_alignTop="@+id/TextView22"
                android:onClick="newActivity"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp" />

            <TextView
                android:id="@+id/textView11"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/txtTitlev1"
                android:layout_below="@+id/txtTitlev1"
                android:onClick="newActivity"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp" />
    </LinearLayout>

    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="3" >
            <TextView
                android:id="@+id/TextView31"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/txtTitlev3"
                android:layout_alignParentRight="true"
                android:layout_below="@+id/txtTitlev3"
                android:text="@string/strNA"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp" />

            <TextView
                android:id="@+id/TextView33"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBaseline="@+id/TextView23"
                android:layout_alignBottom="@+id/TextView23"
                android:layout_alignLeft="@+id/TextView32"
                android:layout_alignParentRight="true"
                android:text="@string/strNA"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />

            <TextView
                android:id="@+id/txtTitlev1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_above="@+id/TextView21"
                android:layout_alignParentLeft="true"
                android:fontFamily="Roboto-BoldCondensed.ttf"
                android:text="@string/ttlLeadid"
                android:textColor="@color/Turquoise4"
                android:layout_weight="1"
                android:textSize="20sp"
                android:textStyle="bold|normal"
                android:typeface="normal" />
    </LinearLayout>

    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="3" >
            <TextView
                android:id="@+id/TextView32"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/TextView31"
                android:layout_alignParentRight="true"
                android:layout_below="@+id/TextView31"
                android:text="@string/strNA"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />

            <TextView
                android:id="@+id/TextView22"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/TextView21"
                android:layout_below="@+id/TextView21"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />

            <TextView
                android:id="@+id/TextView23"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/TextView22"
                android:layout_below="@+id/TextView22"
                android:onClick="newActivity"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />
    </LinearLayout>

    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="3" >
            <TextView
                android:id="@+id/txtTitlev3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                android:fontFamily="Roboto-BoldCondensed.ttf"
                android:text="@string/ttlContact"
                android:textColor="@color/Turquoise4"
                android:textSize="20sp"
                android:layout_weight="1"
                android:textStyle="bold|normal" />

            <TextView
                android:id="@+id/txtTitlev2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true"
                android:fontFamily="Roboto-BoldCondensed.ttf"
                android:text="@string/ttlName"
                android:textColor="@color/Turquoise4"
                android:textSize="20sp"
                android:layout_weight="1"
                android:textStyle="bold|normal" />

            <TextView
                android:id="@+id/TextView21"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_above="@+id/TextView32"
                android:layout_centerHorizontal="true"
                android:text="Medium Text"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                android:layout_weight="1"
                tools:ignore="HardcodedText" />
    </LinearLayout>

</LinearLayout>

[编辑]

有没有其他的安排方式?

提前致谢...

4

3 回答 3

0

尝试使用您的RelativeLayout. 我LinearLayouts在你的4 中添加了 4 RelativeLayout,所有的weightSum都是 3 并相应地移动了你的TextViews。我还将它们的layout_weight参数设置为 1,以便它们在屏幕上拉伸。

我没有对此进行测试,但它应该可以工作。

编辑:我将 RelativeLayout 更改为 LinearLayout 看到您的所有视图都在彼此下方

<LinearLayout
    android:id="@+id/LinearLayoutInside"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/button2"
    android:orientation="vertical"
    android:background="@drawable/border_bkgrnd" >
    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="3" >
            <TextView
                android:id="@+id/textView13"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/TextView12"
                android:layout_below="@+id/TextView12"
                android:onClick="newActivity"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />

            <TextView
                android:id="@+id/TextView12"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/textView11"
                android:layout_alignRight="@+id/textView11"
                android:layout_alignTop="@+id/TextView22"
                android:onClick="newActivity"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp" />

            <TextView
                android:id="@+id/textView11"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/txtTitlev1"
                android:layout_below="@+id/txtTitlev1"
                android:onClick="newActivity"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp" />
    </LinearLayout>

    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="3" >
            <TextView
                android:id="@+id/TextView31"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/txtTitlev3"
                android:layout_alignParentRight="true"
                android:layout_below="@+id/txtTitlev3"
                android:text="@string/strNA"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp" />

            <TextView
                android:id="@+id/TextView33"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBaseline="@+id/TextView23"
                android:layout_alignBottom="@+id/TextView23"
                android:layout_alignLeft="@+id/TextView32"
                android:layout_alignParentRight="true"
                android:text="@string/strNA"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />

            <TextView
                android:id="@+id/txtTitlev1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_above="@+id/TextView21"
                android:layout_alignParentLeft="true"
                android:fontFamily="Roboto-BoldCondensed.ttf"
                android:text="@string/ttlLeadid"
                android:textColor="@color/Turquoise4"
                android:layout_weight="1"
                android:textSize="20sp"
                android:textStyle="bold|normal"
                android:typeface="normal" />
    </LinearLayout>

    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="3" >
            <TextView
                android:id="@+id/TextView32"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/TextView31"
                android:layout_alignParentRight="true"
                android:layout_below="@+id/TextView31"
                android:text="@string/strNA"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />

            <TextView
                android:id="@+id/TextView22"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/TextView21"
                android:layout_below="@+id/TextView21"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />

            <TextView
                android:id="@+id/TextView23"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/TextView22"
                android:layout_below="@+id/TextView22"
                android:onClick="newActivity"
                android:text="Medium Text"
                android:layout_weight="1"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                tools:ignore="HardcodedText" />
    </LinearLayout>

    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:weightSum="3" >
            <TextView
                android:id="@+id/txtTitlev3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                android:fontFamily="Roboto-BoldCondensed.ttf"
                android:text="@string/ttlContact"
                android:textColor="@color/Turquoise4"
                android:textSize="20sp"
                android:layout_weight="1"
                android:textStyle="bold|normal" />

            <TextView
                android:id="@+id/txtTitlev2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                android:layout_centerHorizontal="true"
                android:fontFamily="Roboto-BoldCondensed.ttf"
                android:text="@string/ttlName"
                android:textColor="@color/Turquoise4"
                android:textSize="20sp"
                android:layout_weight="1"
                android:textStyle="bold|normal" />

            <TextView
                android:id="@+id/TextView21"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_above="@+id/TextView32"
                android:layout_centerHorizontal="true"
                android:text="Medium Text"
                android:textAppearance="?android:attr/textAppearanceMedium"
                android:textSize="15sp"
                android:layout_weight="1"
                tools:ignore="HardcodedText" />
    </LinearLayout>

</LinearLayout>
于 2013-03-19T12:43:51.737 回答
0

你为什么不尝试通过RelativeLayout.layoutparams和相对布局java编码来使用它。

您可以使用任何布局来执行此操作,例如这里我使用的是线性布局

Textview hname, game,time;
    hname = new TextView(context);
            game =new TextView(context);
            time = new TextView(context);

LinearLayout ll = new LinearLayout(context);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(600, 100);

//add the settext here for ur textviews

ll.addView(hname, lp);
ll.addView(game, lp);
ll.addView(time, lp);

setcontentview(ll);
于 2013-03-19T12:52:25.760 回答
0

您可以使用类似这样的布局。我使用了 3 行的表格布局。第一行显示列标题,其他行显示数据。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TableLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:stretchColumns="*" >

        <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp" >

            <TextView
                android:id="@+id/ID"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="ID"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Name"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Contact"
                android:textAppearance="?android:attr/textAppearanceMedium" />

        </TableRow>

        <TableRow
            android:id="@+id/tableRow2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/textView4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="12"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Name 1"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView6"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="1234567"
                android:textAppearance="?android:attr/textAppearanceMedium" />

        </TableRow>

        <TableRow
            android:id="@+id/tableRow3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

            <TextView
                android:id="@+id/textView7"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="25"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView8"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Name 2"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView9"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="594751"
                android:textAppearance="?android:attr/textAppearanceMedium" />

        </TableRow>
    </TableLayout>

</LinearLayout>
于 2013-04-17T12:40:10.170 回答