如何让android EditText小于默认高度?

时间:2009-09-01 08:54:24

标签: android android-edittext

如何让android EditText的高度低于默认值?

如果我改变高度,我看不到我的文字,但底部有额外的空白。

5 个答案:

答案 0 :(得分:27)

EditText具有默认的填充集。

试试这个,

<EditText 
    android:text="Any Text" 
    android:layout_width="fill_parent" 
    android:layout_height="16dp" 
    android:padding="2dp"
    android:background="#FFF"
    android:textSize="10dp"
/>

答案 1 :(得分:10)

使用

android:textAppearance="?android:attr/textAppearanceSmallInverse"

如需进一步参考,请参阅:http://developer.android.com/guide/topics/ui/themes.html

答案 2 :(得分:7)

我对那里的任何答案都不是很满意,但是当它们结合起来时,它们主要包含正确解决方案的所有成分。但让我们首先确定问题所在。问题是bhatt4982说明填充,他已经提供了解决方案。将填充设置为您想要的任何内容。如果您还想要一个较小的字体,请执行learn_andrd建议或类似的事情

style="@android:style/TextAppearance.Small.Inverse"

现在,EditText元素的宽度正确,字体大小与常规TextView的宽度相匹配。然而,颜色是相反的,因为浅灰色在白色背景上看起来不太好。这就把我们带到了最后一个问题,背景。您需要设置不同的背景,因为默认的EditText背景具有最小高度。该高度是元素当前高度的高度。 AFAIK Android不支持缩小背景图像。您应该为EditText定义自己的背景Drawable,它允许的高度小于默认值允许的高度。否则,无论您尝试设置高度或填充或maring,它都不会产生任何影响。

P.S。您可能想知道为什么他们让您创建较小的EditView变得如此困难......也许它与以下事实有关:尽管如此,很难用手指将光标移动到特定的位置在EditText中的位置(比如用于修复拼写而不删除所有内容)元素。如果你让文字更小,那将变得不可能。因此,你应该重新考虑它,你想要实现的目标,除非你只是试图减少填充,否则它确实值得追求。

答案 3 :(得分:3)

是否可以选择明确设置高度?

如果是,请使用

之类的内容
<EditText
    android:id="@+id/smallEditText"
    android:layout_width="wrap_content"
    android:layout_height="10dip"/>

您可以在XML中使用android:textSize来减小字体大小。您还可以使控件可滚动。

编辑:刚看到你的截图,你放置EditText的布局是什么?它可能是为您的控件设置非显式布局规则。

答案 4 :(得分:0)

更改XML编辑文本这两个属性

 android:layout_height="15dp"
 android:textSize="12sp"