Android-根据不同的屏幕尺寸调整图像

时间:2011-07-25 21:59:43

标签: android image size screen imageview

我目前有imageview图片。它在我的2.7“测试屏幕上看起来很完美,但是,当我在我的4.3”屏幕上测试它时,图像不在它应该的位置。我将高度设置为dp,并且我的图像文件位于hdpi,mdpi和Ldpi文件夹中。难道我做错了什么?或者更确切地说,是否有某种方法可以锁定图像的位置,以便在所有手机尺寸中以相同的方式显示? 谢谢。

不适应各种屏幕尺寸的imageview是第一个imageview(id = sdrbg) 这是我的布局文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/relativeLayout1" android:layout_width="fill_parent"
    android:layout_height="fill_parent" android:orientation="vertical">
    <ImageView android:layout_width="wrap_content"
        android:layout_alignParentTop="true" android:id="@+id/sdrbg"
        android:background="@drawable/sdrmaingraphic" android:layout_height="289dp"></ImageView>

    <ImageView android:id="@+id/canvasBOM"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="false" android:layout_width="fill_parent"
        android:background="@drawable/canvas" android:layout_height="100dp">
    </ImageView>
    <Button android:layout_alignParentBottom="true"
        android:id="@+id/playpausebuttonBOM" android:background="@drawable/main_pause_button"
        android:layout_height="wrap_content" android:layout_width="wrap_content"
        android:layout_marginLeft="10dp"></Button>
    <Button android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:id="@+id/nextbuttonBOM"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true" android:background="@drawable/next_song_button"
        android:layout_marginRight="10dp"></Button>
    <TextView android:id="@+id/textView1" android:layout_height="wrap_content"
        android:layout_width="wrap_content" android:text="Best of May 2011"
        android:textSize="20dp" android:textStyle="bold"
        android:layout_centerHorizontal="true" android:layout_centerVertical="false"></TextView>
</RelativeLayout>

2 个答案:

答案 0 :(得分:1)

而不是指定高度使用wrap_content和RelativeLayout功能来指定高度。例如:android:layout_alignParentTop="true" android:layout_alignBottom="@id/playPauseButtomBOM"android:layout_marginBottom="xxdp"

答案 1 :(得分:0)

认为问题出在android:layout_height="289dp",尽量不控制height,而是使用padding代替