0

我一直在 eclipse 中搞乱 androids UI,并且一直无法弄清楚为什么我的图形布局在启动到设备时不能反映我的实际程序。实际程序似乎有更大的规模。

我的目标设备是具有 240dpi 屏幕的 WVGA (800x480)(例如大多数新的高端智能手机)。我尝试通过将屏幕更改为与目标设备的显示规格相匹配的 3.7 WVGA (Nexus One) 来编辑我的图形布局视图。我也尝试过创建自定义屏幕配置,但仍然没有成功。这是它的2个屏幕截图

模拟器视图

所见即所得视图

这是我的布局

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

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scaleType="fitCenter"
        android:src="@drawable/androidcomp360" >
    </ImageView>

    <RelativeLayout
        android:id="@+id/relativeLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="0px"
        android:layout_marginTop="10px" >

        <TextView
            android:id="@+id/textView4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/textView1"
            android:layout_below="@+id/textView1"
            android:paddingLeft="20px"
            android:text="Offset : " >
        </TextView>

        <TextView
            android:id="@+id/TextView02"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView4"
            android:layout_alignTop="@+id/textView4"
            android:layout_toRightOf="@+id/textView4"
            android:paddingLeft="10px"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/TextView03"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/TextView02"
            android:layout_alignTop="@+id/TextView02"
            android:layout_toRightOf="@+id/TextView02"
            android:paddingLeft="20px"
            android:text="Offset Min :  " >
        </TextView>

        <TextView
            android:id="@+id/TextView04"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/TextView03"
            android:layout_alignTop="@+id/TextView03"
            android:layout_toRightOf="@+id/TextView03"
            android:paddingLeft="10px"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView1"
            android:layout_alignTop="@+id/textView1"
            android:layout_toRightOf="@+id/textView1"
            android:paddingLeft="10px"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView2"
            android:layout_alignTop="@+id/textView2"
            android:layout_toRightOf="@+id/textView2"
            android:paddingLeft="20px"
            android:text="GPS Heading : " >
        </TextView>

        <TextView
            android:id="@+id/TextView01"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView3"
            android:layout_alignTop="@+id/textView3"
            android:layout_toRightOf="@+id/textView3"
            android:paddingLeft="10px"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/TextView06"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/TextView04"
            android:layout_alignTop="@+id/TextView04"
            android:layout_toRightOf="@+id/TextView04"
            android:paddingLeft="20px"
            android:text="Offset Max : " >
        </TextView>

        <TextView
            android:id="@+id/TextView05"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/TextView06"
            android:layout_alignTop="@+id/TextView06"
            android:layout_toRightOf="@+id/TextView06"
            android:paddingLeft="10dp"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:paddingBottom="10px"
            android:paddingLeft="20px"
            android:text="Compass Heading : " >
        </TextView>
    </RelativeLayout>

    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:maxHeight="50px"
        android:minHeight="30px"
        android:text="Log Data"
        android:typeface="normal"
        android:visibility="visible" >
    </Button>

    <ImageView
        android:id="@+id/ImageView01"
        android:layout_width="match_parent"
        android:layout_height="200px"
        android:scaleType="fitCenter"
        android:src="@drawable/androidcomp360" >
    </ImageView>

</LinearLayout>
4

2 回答 2

0

将所有内容的比例更改为“dp”,因为这会根据屏幕分辨率进行缩放。'px' 是绝对像素尺寸,不会缩放。

于 2011-05-06T22:29:35.347 回答
0

试试这个布局,不要使用 px,而是使用 dp,并将图像放在 drawable-hdpi 上:

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

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:scaleType="fitCenter"
        android:src="@drawable/androidcomp360" >
    </ImageView>

    <RelativeLayout
        android:id="@+id/relativeLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp" >

        <TextView
            android:id="@+id/textView4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/textView1"
            android:layout_below="@+id/textView1"
            android:paddingLeft="20dp"
            android:text="Offset : " >
        </TextView>

        <TextView
            android:id="@+id/TextView02"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView4"
            android:layout_alignTop="@+id/textView4"
            android:layout_toRightOf="@+id/textView4"
            android:paddingLeft="10dp"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/TextView03"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/TextView02"
            android:layout_alignTop="@+id/TextView02"
            android:layout_toRightOf="@+id/TextView02"
            android:paddingLeft="20dp"
            android:text="Offset Min :  " >
        </TextView>

        <TextView
            android:id="@+id/TextView04"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/TextView03"
            android:layout_alignTop="@+id/TextView03"
            android:layout_toRightOf="@+id/TextView03"
            android:paddingLeft="10dp"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView1"
            android:layout_alignTop="@+id/textView1"
            android:layout_toRightOf="@+id/textView1"
            android:paddingLeft="10dp"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView2"
            android:layout_alignTop="@+id/textView2"
            android:layout_toRightOf="@+id/textView2"
            android:paddingLeft="20dp"
            android:text="GPS Heading : " >
        </TextView>

        <TextView
            android:id="@+id/TextView01"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/textView3"
            android:layout_alignTop="@+id/textView3"
            android:layout_toRightOf="@+id/textView3"
            android:paddingLeft="10dp"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/TextView06"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/TextView04"
            android:layout_alignTop="@+id/TextView04"
            android:layout_toRightOf="@+id/TextView04"
            android:paddingLeft="20dp"
            android:text="Offset Max : " >
        </TextView>

        <TextView
            android:id="@+id/TextView05"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/TextView06"
            android:layout_alignTop="@+id/TextView06"
            android:layout_toRightOf="@+id/TextView06"
            android:paddingLeft="10dp"
            android:text="0" >
        </TextView>

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:paddingBottom="10dp"
            android:paddingLeft="20dp"
            android:text="Compass Heading : " >
        </TextView>
    </RelativeLayout>

    <Button
        android:id="@+id/button1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:maxHeight="50dp"
        android:minHeight="30dp"
        android:text="Log Data"
        android:typeface="normal"
        android:visibility="visible" >
    </Button>

    <ImageView
        android:id="@+id/ImageView01"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:scaleType="fitCenter"
        android:src="@drawable/androidcomp360" >
    </ImageView>

</LinearLayout>
于 2012-07-30T14:45:23.457 回答