0

我创建了 android 相对布局,其中,我试图在活动的四个侧面显示四个图像,顶部栏和背景图像。

顶栏和背景图像正确显示。但是,在 Nexus 模拟器中仅显示 4 张图像,其余 2 张图像在模拟器中不可见,我已将图像左对齐,右对齐,左对齐,右对齐另一行。

模拟器中央只显示左侧图像,两个右侧图像均不可见。

如何在显示器上以相等的空间显示所有图像。我的布局如下所示

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:background="@drawable/background"
        android:gravity="center_horizontal"
        android:orientation="vertical"
        tools:context=".MainActivity" >

        <ImageView
            android:id="@+id/topbannerimg"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="false"
            android:layout_alignParentTop="true"
            android:background="@drawable/topbanner"
            android:contentDescription="@string/topbar"
            android:src="@drawable/mtnlogotext" />

        <ImageView
            android:id="@+id/csrimg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/topbannerimg"
            android:contentDescription="@string/csrstr"
            android:src="@drawable/customerservice" />

        <ImageView
            android:id="@+id/virtualstoreimg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/topbannerimg"
            android:contentDescription="@string/virstr"
            android:src="@drawable/virtualstore" />

        <ImageView
            android:id="@+id/mtnstorelocatorimg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/csrimg"
            android:contentDescription="@string/storestr"
            android:src="@drawable/storelocater" />

        <ImageView
            android:id="@+id/mtnviewimg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/virtualstoreimg"
            android:layout_toRightOf="@+id/mtnstorelocatorimg"
            android:contentDescription="@string/viewstr"
            android:src="@drawable/mtnview" />

    </RelativeLayout>
4

3 回答 3

0
I have used android:layout_width="145dp" and  android:layout_height="100dp" in the images, now the layout is appearing correctly, with images placed in correct rows and columns


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:background="@drawable/background"
    android:gravity="center_horizontal"
    android:orientation="vertical"
    android:padding="10dp"
    tools:context=".MainActivity" >

    <ImageView
        android:id="@+id/topbannerimg"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="false"
        android:layout_alignParentTop="true"
        android:background="@drawable/topbanner"
        android:contentDescription="@string/topbar"
        android:src="@drawable/mtnlogotext" />

    <ImageView
        android:id="@+id/csrimg"
        android:layout_width="145dp"
        android:layout_height="100dp"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/topbannerimg"
        android:contentDescription="@string/csrstr"
        android:src="@drawable/customerservice" />

    <ImageView
        android:id="@+id/virtualstoreimg"
        android:layout_width="145dp"
        android:layout_height="100dp"
        android:layout_below="@+id/topbannerimg"
        android:layout_alignParentLeft="false"
        android:layout_toRightOf="@+id/csrimg"
        android:contentDescription="@string/virstr"
        android:src="@drawable/virtualstore" />

    <ImageView
        android:id="@+id/mtnstorelocatorimg"
        android:layout_width="145dp"
        android:layout_height="100dp"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/csrimg"
        android:contentDescription="@string/storestr"
        android:src="@drawable/storelocater" />

    <ImageView
        android:id="@+id/mtnviewimg"
        android:layout_width="145dp"
        android:layout_height="100dp"
        android:layout_below="@+id/virtualstoreimg"
        android:layout_toRightOf="@+id/mtnstorelocatorimg"
        android:contentDescription="@string/viewstr"
        android:src="@drawable/mtnview" />

</RelativeLayout>
于 2012-12-31T05:02:49.513 回答
0

我修改了您的代码,只是将图标图像替换为您的实际图像。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:background="#ff4455"
    tools:context=".MainActivity" >

    <ImageView
        android:id="@+id/topbannerimg"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="false"
        android:layout_alignParentTop="true"
        android:background="#222222"
        android:contentDescription="@string/topbar"
        android:src="@drawable/ic_launcher" />

    <ImageView
        android:id="@+id/csrimg"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/topbannerimg"
        android:contentDescription="@string/csrstr"
        android:src="@drawable/ic_launcher" />

    <ImageView
        android:id="@+id/virtualstoreimg"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/topbannerimg"
        android:contentDescription="@string/virstr"
        android:src="@drawable/ic_launcher" />

    <ImageView
        android:id="@+id/mtnstorelocatorimg"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentBottom="true"
        android:contentDescription="@string/storestr"
        android:src="@drawable/ic_launcher" />

    <ImageView
        android:id="@+id/mtnviewimg"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
        android:contentDescription="@string/viewstr"
        android:layout_alignParentRight="true"
        android:src="@drawable/ic_launcher" />

</RelativeLayout>

在此处输入图像描述

我不确定布局设计,所以请上传您想要的布局图片。

于 2012-12-31T05:36:39.767 回答
0

我认为您正在尝试将五个图像中的一个保留在顶部,然后保留 2 行,每行有 2 个图像。

我稍微修改了你的代码。试试看。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <ImageView
        android:id="@+id/topbannerimg"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:background="@drawable/topbanner"
        android:contentDescription="@string/topbar"
        android:src="@drawable/mtnlogotext" />

    <RelativeLayout
        android:id="@+id/row1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/topbannerimg" >

        <ImageView
            android:id="@+id/csrimg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:contentDescription="@string/csrstr"
            android:src="@drawable/customerservice" />

        <ImageView
            android:id="@+id/virtualstoreimg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/csrimg"
            android:contentDescription="@string/virstr"
            android:src="@drawable/virtualstore" />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/row2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/row1" >

        <ImageView
            android:id="@+id/mtnstorelocatorimg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@id/csrimg"
            android:contentDescription="@string/storestr"
            android:src="@drawable/storelocater" />

        <ImageView
            android:id="@+id/mtnviewimg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/virtualstoreimg"
            android:layout_toRightOf="@id/mtnstorelocatorimg"
            android:contentDescription="@string/viewstr"
            android:src="@drawable/mtnview" />
    </RelativeLayout>

</RelativeLayout>
于 2012-12-24T06:01:51.213 回答