屏幕太高 (android)

Posted

技术标签:

【中文标题】屏幕太高 (android)【英文标题】:Too high screen (android) 【发布时间】:2012-10-19 13:44:40 【问题描述】:

有人知道为什么我的布局看起来像this吗?

所有元素都是 layout_...

我不知道为什么,如果我添加滚动视图,我必须看到那里所有的空白。

    <ScrollView
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_
        android:layout_
        >

        <LinearLayout
        android:layout_
        android:layout_
        android:background="@drawable/fondo"
        android:orientation="vertical" >

        <TextView
            android:layout_
            android:layout_
            android:layout_marginTop="10dp"
            android:text="@string/generandoDemandaTitulo"
            tools:context=".GenerandoDemanda" />

        <EditText
            android:id="@+id/editTextTitulo"
            android:layout_
            android:layout_
            tools:ignore="TextFields" />

        <TextView
            android:layout_
            android:layout_
            android:layout_marginTop="10dp"
            android:text="@string/generandoDemandaDescripcion"
            tools:context=".GenerandoDemanda" />

        <EditText
            android:id="@+id/editTextDescripcion"
            android:layout_
            android:layout_
            tools:ignore="TextFields" />

        <LinearLayout
            android:layout_
            android:layout_
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/textoAmbito"
                android:layout_weight="1"
                android:layout_
                android:layout_
                android:layout_gravity="center_vertical"
                android:text="@string/generandoDemandaAmbito" />

            <Button
                android:id="@+id/botonSeleccionarAmbito"
                android:layout_weight="2"
                android:layout_
                android:layout_
                android:layout_gravity="center_vertical|right|center_horizontal"
                android:layout_marginLeft="20dp"
                android:layout_marginRight="20dp"
                android:gravity="center"
                android:text="@string/generandoDemandaBotonAmbito"
                android:onClick="showMenuAmbito" />
        </LinearLayout>

        <TextView
            android:layout_
            android:layout_
            android:layout_gravity="center_vertical"
            android:text="@string/generandoDemandaDesde" />

        <LinearLayout
            android:layout_
            android:layout_
            android:layout_gravity="center"
            android:gravity="left"
            android:orientation="horizontal" >

            <Button
                android:layout_
                android:layout_
                android:layout_marginRight="10dp"
                android:layout_weight="1"
                android:onClick="showDatePickerDialogDesde"
                android:text="@string/eligeFecha" />

            <TextView
                android:id="@+id/fechaDesde"
                android:layout_
                android:layout_
                android:layout_marginRight="10dp"
                android:layout_weight="1" />

            <TextView
                android:id="@+id/horaDesde"
                android:layout_
                android:layout_
                android:layout_weight="1" />
        </LinearLayout>

        <TextView
            android:layout_
            android:layout_
            android:layout_gravity="center_vertical"
            android:layout_marginTop="15sp"
            android:text="@string/generandoDemandaHasta" />

        <LinearLayout
            android:layout_
            android:layout_
            android:layout_gravity="center"
            android:gravity="center"
            android:orientation="horizontal" >

            <Button
                android:layout_
                android:layout_
                android:layout_marginRight="10dp"
                android:layout_weight="1"
                android:onClick="showDatePickerDialogHasta"
                android:text="@string/eligeFecha" />

            <TextView
                android:id="@+id/fechaHasta"
                android:layout_
                android:layout_
                android:layout_marginRight="10dp"
                android:layout_weight="1" />

            <TextView
                android:id="@+id/horaHasta"
                android:layout_
                android:layout_
                android:layout_weight="2" />
        </LinearLayout>

        <LinearLayout
            android:layout_
            android:layout_
            android:orientation="horizontal" >

            <LinearLayout
                android:layout_
                android:layout_
                android:layout_weight="3"
                android:orientation="horizontal" >

                <TextView
                    android:layout_
                    android:layout_
                    android:text="@string/generandoDemandaPrecio" />

                <EditText
                    android:layout_
                    android:layout_
                    android:inputType="numberDecimal" />
            </LinearLayout>

            <Button
                android:layout_
                android:layout_
                android:layout_gravity="right"
                android:layout_marginLeft="20dp"
                android:layout_weight="1"
                android:gravity="center_vertical|center"
                android:text="@string/generandoDemandaBotonZona" >
            </Button>
        </LinearLayout>

        <LinearLayout
            android:layout_
            android:layout_
            android:orientation="horizontal" >

    <LinearLayout
        android:layout_
        android:layout_
        android:layout_marginRight="53dp"
        android:layout_weight="4"
        android:gravity="left"
        android:orientation="horizontal" 
        android:layout_marginTop="10dp">

            <TextView
                android:layout_
                android:layout_
                android:text="@string/generandoDemandaPublica" />

            <ToggleButton
                android:layout_
                android:layout_
                android:textOff="Publico"
                android:textOn="Privado" />
    </LinearLayout>

<Button
    android:layout_
    android:layout_
    android:layout_marginTop="10dp"
    android:layout_weight="1"
    android:drawableLeft="@drawable/clearcache"
    android:drawablePadding="10dp"
    android:gravity="center"
    android:text="@string/generandoDemandaBotonCrear" />

    </LinearLayout>

</LinearLayout>
</ScrollView>

那么,有人可以帮帮我吗?错误可能在哪里。

【问题讨论】:

为什么线性layout_height=466 dp???给它 wrap_content 并尝试一下... 这是一个 Eclipse 屏幕截图,你的布局在模拟器中看起来还好吗?预期的结果是什么? 【参考方案1】:
<LinearLayout
        android:layout_
        android:layout_
                               ^^^^^
        android:background="@drawable/fondo"
        android:orientation="vertical" >

您提供466 dp 高度替换为wrap_content

【讨论】:

我检查它是真的。不要设置固定高度。设置 wrap_content 是的,它在 xml 视图中似乎是常规的,而不是您的参考图像。 抱歉,我手动将高度更改为该像素,但没有得到解决。【参考方案2】:

这是我在父 ScrollView 中的 LinearLayout。在添加 ScrollView 之前,我将图像作为背景。把ScrollView的背景放在LinearLayout里面就解决了。

<LinearLayout
    android:layout_
    android:layout_
    android:background="@drawable/fondo"
    android:orientation="vertical" >

【讨论】:

【参考方案3】:

这样试试;

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_
     android:layout_ 
     android:scaleType="fitXY"
     android:background="@drawable/backgroundlogin">

    <RelativeLayout
    android:layout_
    android:layout_ >

【讨论】:

以上是关于屏幕太高 (android)的主要内容,如果未能解决你的问题,请参考以下文章

Android 通过配置,设置margin-Left和margin-Top相对的距离

android怎么获取fragment屏幕宽度

Android 屏幕适配屏幕适配基础概念 ① ( Android 与 iOS 屏幕宽高比种类 | 屏幕像素密度 DPI )

android获取屏幕的分辨率方法有几种

如何在屏幕镜像期间锁定Android屏幕?

Android开发:最全面最易懂的Android屏幕适配解决方案