Android EditText 总是从底部填充

标签 android android-edittext

这是我的 ListView XML 代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ListView
        android:id="@+list/list_view"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/defaultbg"
        android:drawSelectorOnTop="false" />

    <ImageButton
        android:id="@+list/filter_button"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:background="@android:color/transparent"
        android:contentDescription="@string/SmallLogo"
        android:scaleType="fitXY"
        android:src="@drawable/filter" />

    <!-- empty view -->

    <TextView
        android:id="@+list/empty"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:background="@drawable/defaultbg"
        android:gravity="center"
        android:text="@string/whos_around_empty_text"
        android:textAppearance="@android:style/TextAppearance.Medium"
        android:textColor="@android:color/white"
        android:textStyle="bold" />

    <EditText
        android:id="@+list/filter"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:hint="@string/search"                
        android:visibility="visible"/>
</RelativeLayout>

EditText 位于 View 的底部,但由于某种原因它并没有紧贴底部..

当仔细检查时,我发现布局就在底部 - 但内部白色背景并没有覆盖整个布局(有点像当 ImageView 尺寸大于布局尺寸并且您使用 scaleType 时) ..

EditText 紧贴底部对我来说真的很重要……有什么想法吗??

更新:添加屏幕截图:

screenShot

如您所见 - editText 白色背景的底部未向下对齐到屏幕底部...尽管布局本身已对齐

最佳答案

在 Android 中,所有小部件都与其他 View 有一些填充和边距,以提高可见性。 每个小部件都有 4 dp 的边距和 8 dp 的填充。如果你不想要,你可以创建一个自定义 View 。

现在,尝试使用负像素在底部留出边距。

android:layout_marginBottom="-4dp"

在我的布局上工作得很好

关于Android EditText 总是从底部填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14579191/

相关文章:

java - gradle 在 android studio 中实际是如何工作的?

android - 处理分块传输编码改造 2

android - Activity 生命周期 : Why is it set to "Paused" and not "Stopped"

android - EditText 在 CursorAdapter 中点击改变我的 View

android - EditText.setError() 的弹出消息布局看起来很奇怪

android - AppCompatEditText 的默认背景是什么?

java - 如何将文本逐行设置为多行编辑文本

android - 在 android 中发送带有附件的电子邮件

java - 从sqlite数据库Android检索数据时捕获异常

Android:强制 EditText 移除焦点?