0

我正在做一个项目,但遇到了一些问题。我没有非常多地使用布局,所以我不知道这是否可能。

在图片中,我添加了项目模型。对于较低的屏幕分辨率,它看起来不错,但是当我将应用程序放在 5 英寸设备上时,这个橙色区域太高了,我想知道是否有可能以某种方式使该区域居中。

在此处输入图像描述

橙色区域是一个 LinearLayout,所有东西都包裹在 LinearLayout 中。希望你明白我的意思我在问什么。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ffff0000"
    android:orientation="vertical"
    android:paddingLeft="16dp"
    android:paddingRight="16dp" >

    <LinearLayout
        android:id="@+id/first"
        android:layout_width="match_parent"
        android:layout_height="76dp"
        android:background="#175797"
        android:orientation="vertical" >

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Subject" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/second"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:background="#00FFFF"
        android:orientation="vertical" >

        <Button
            android:layout_width="100dp"
            android:layout_height="wrap_content"
            android:text="Send" />
    </LinearLayout>

    <LinearLayout
        android:layout_gravity="bottom"
        android:id="@+id/third"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:background="#FFA500"
        android:orientation="horizontal" >
    </LinearLayout>

</LinearLayout>

这是模型的代码。对于项目来说几乎是一样的

4

4 回答 4

1

尝试这个 !

我尝试将线性布局放在相对布局中并定义其重力。我检查了各种分辨率。试一试

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffff0000"
android:orientation="vertical"
android:paddingLeft="16dp"
android:paddingRight="16dp" >

<LinearLayout
    android:id="@+id/first"
    android:layout_width="match_parent"
    android:layout_height="76dp"
    android:background="#175797"
    android:orientation="vertical" >

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Subject" />
</LinearLayout>

<LinearLayout
    android:id="@+id/second"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:background="#00FFFF"
    android:orientation="vertical" >

    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Send" />
</LinearLayout>

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="fill_parent"
    android:gravity="center"
    >

    <LinearLayout
        android:id="@+id/third"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:background="#FFA500"
        android:gravity="center"
        android:orientation="horizontal" >
    </LinearLayout>
</RelativeLayout>

于 2013-07-03T06:27:03.450 回答
0

为了给所有 android 设备和平板电脑提供 xml 的兼容性,请使用相对布局作为父视图并根据您的要求设置组件。请点击此链接以获取更多参考:http: //developer.android.com/reference/android/widget/RelativeLayout.html

于 2013-07-03T06:14:19.900 回答
0

您可以尝试@g00dy 回答,否则

您必须为平板手机(即 5 英寸设备)创建单独的布局

在此链接中,他们解释了我们如何放置平板电脑布局......

在android开发者网站上,他们已经解释了android如何管理不同屏幕尺寸的布局 检查这个链接

于 2013-07-03T06:00:36.893 回答
0

可以尝试一下android:layout_gravity="center",应该可以解决问题:) 此外,您还可以添加android:layout_centerInParent="true"并查看此线程

于 2013-07-03T05:58:05.483 回答