gpt4 book ai didi

Android布局重力不起作用

转载 作者:太空狗 更新时间:2023-10-29 16:04:52 26 4
gpt4 key购买 nike

我有一个包含 ScrollView 的 xml 文件,里面有一个 LinearLayout;此布局还包含另外 2 个布局:

第一个是动态添加数据的地方

2nd 只是需要显示在 View 的底部 的东西。

但是重力不起作用,我尝试了 gravitylayout_gravity 但都不起作用,所有布局都设置为填充父级,为什么会这样?

版权布局必须位于 ScrollView 内,但即使 ScrollView 为空(第一种布局)也必须位于屏幕底部。

<?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:id="@+id/istoricLayout"
android:visibility="visible" >

<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<LinearLayout
android:id="@+id/istoric"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom" //here I'm trying to move this at the buttom
android:orientation="vertical" >

<TextView
android:layout_width="fill_parent"
android:layout_height="@dimen/thick_bar_height"
android:layout_marginBottom="@dimen/bar_vertical_space"
android:layout_marginTop="@dimen/bar_vertical_space"
android:background="@color/white" />

<Button
android:id="@+id/versiuneaCompleta"
android:layout_width="250dp"
android:layout_height="30dp"
android:layout_gravity="center"
android:layout_marginBottom="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@color/color2"
android:text="Vizioneaza versiunea completa"
android:textAlignment="center"
android:textColor="@color/white"
android:textSize="15dp" />

<RelativeLayout
android:layout_width="250dp"
android:layout_height="30dp"
android:layout_gravity="center"
android:layout_marginBottom="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@color/white" >

<ImageView
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_alignParentRight="true"
android:adjustViewBounds="true"
android:src="@drawable/support_right_icon" />

<ImageView
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_alignParentLeft="true"
android:adjustViewBounds="true"
android:src="@drawable/support_left_icon" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@color/white"
android:text="Support +40.XXX.XXX.XXX"
android:textAlignment="center"
android:textColor="@color/color2"
android:textSize="15dp" />
</RelativeLayout>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Politica de condidentialitate ·"
android:textColor="@color/white"
android:textSize="10dp" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" Despre noi ·"
android:textColor="@color/white"
android:textSize="10dp" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" Contact"
android:textColor="@color/white"
android:textSize="10dp" />
</LinearLayout>

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="© 2013 Artcos Design. All Rights Reserved"
android:textColor="@color/copyRightColor"
android:textSize="10dp" />
</LinearLayout>
</LinearLayout>
</ScrollView>

</LinearLayout>

最佳答案

根据对@Doomsknight 的回答的评论,在您的ScrollView 上设置android:fillViewPort="true"

ScrollView 的 child 的高度属性被忽略(如果它被尊重,整个 ScrollView 将毫无用处)。设置 fillViewPort="true" 会使 ScrollView 子级在小于父级高度时扩展到父级高度,否则该属性不执行任何操作。这样, ScrollView 中的子级 LinearLayout 将至少与 ScrollView 的父级一样高,从而使重力按照您想要的方式工作。

此外,将子LinearLayout高度设为wrap_content,并为第一个LinearLayout分配一个非零layout_weight。您还可以删除 bottom layout_gravity

关于Android布局重力不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18510307/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com