android - 将 ImageView 放在屏幕底部

标签 android android-layout

我正在尝试使用以下 XML 将 ImageView 放在布局的底部:

        <?xml version="1.0" encoding="utf-8"?>
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="vertical"
            tools:context=".MainActivity" >
            <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:background="#EEEEEE"
                android:gravity="center"
                android:orientation="horizontal" >
                <ImageView
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="bottom"
                    android:src="@drawable/photo" />
            </LinearLayout>
        </LinearLayout>

我正在按照此处的说明进行操作 http://sandipchitale.blogspot.co.uk/2010/05/linearlayout-gravity-and-layoutgravity.html

唯一的区别是我使用 ImageView 而不是此处的 Button:

<?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" >
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:gravity="center"
        android:orientation="horizontal" >
        <Button
            android:id="@+id/Button03"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            android:text="bottom" >
        </Button>
    </LinearLayout>
</LinearLayout>

将按钮放在预期的位置:

enter image description here

不幸的是,在我的帖子顶部的 XML 中并非如此。 ImageView 没有像引用 XML 中的 Button 那样放在底部。

enter image description here

知道为什么会这样吗?

最佳答案

您应该更改 ImageView 本身的设置,准确地说是在您的 ImageView 上设置 android:scaleType="fitEnd"

其他答案似乎是解决方法,包括您自己的答案。这不是布局的问题,而是当图像和屏幕的尺寸不相似时图像在 ImageView 内部的哪个位置加载的问题(即宽度/高度比非常不同)。默认情况下,它会在 ImageView 的中间加载图像。

关于android - 将 ImageView 放在屏幕底部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19211574/

相关文章:

android - Firebase runloop (3.0.0) 中的未捕获异常

android - AdMob AdView 出现在 Android 中的 ListView 之上

android - 如何在 Android TabLayout 中监听滚动事件

java - Android的RelativeLayout动画问题

android - 如何在代码中更改 ListView 中一项的背景

android - 在 Android 启动器和其他应用程序屏幕上绘制 float 布局并管理此布局的生命周期

android - 在 Android 版本 6 棉花糖中膨胀类 de.hdodenhof.circleimageview.CircleImageView 时出错

java - 我如何在其他 View 之后绘制某些 View ?

android - 在 v4 ViewPager 上更改颜色 TabSelector

java - java代码中的Android布局