2009-09-01 40 views
15

如何使android editText的高度比默认值小?如何使android editText的高度比默认值小?

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

+1

'这个问题是不太可能有帮助的任何未来visitors',对,没错!有超过4万次访问。 – 2014-12-06 23:41:04

+0

关闭的原因绝对不对,但我仍希望看到一个示例,说明期望的行为是什么以及当前的行为是什么,可能是截图。也许多年来,提问的标准也得到了改善。 – Trilarion 2015-02-18 09:14:26

回答

24

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

这实际上使edittext更小,但是当我点击它时,中间会出现一条橙色的线条。 – Jacky 2009-09-04 04:34:15

+0

@Jacky:可以通过添加背景来处理。 尝试使用属性 - android:background =“#FFF”最佳 - 指定一个基于xml的可绘制背景,可处理所有状态(如焦点) – bhatt4982 2009-09-04 05:12:47

+1

这似乎相当黑。首先,你应该使用sp测量来设置textSize,而不是dp。 – 2011-04-21 23:27:24

3

是否可以明确设置高度?

如果是的话,使用类似

<EditText 
    android:id="@+id/smallEditText" 
    android:layout_width="wrap_content" 
    android:layout_height="10dip"/> 

可以减小字体大小,通过XML使用android:textSize。你也可以让你的控件可以滚动。

编辑:刚才看到了你的截图,你把EditText放在哪个布局中?它可能会为您的控件设置非显式布局规则。

+0

我使用LinerLayout,实际上让我的文字字体变小不会解决问题 – Jacky 2009-09-01 09:59:29

7

我是不是真的不满意任何答案存在的,虽然当他们结合大多包含正确解决方案的所有成分。但是,我们先来确定问题所在。问题是bhatt4982说填充,他提供了一个解决方案。设置填充任何你想要的。如果你也希望有一个较小的字体做类似learn_andrd暗示或像这样

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

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

P.S.你可能想知道为什么他们让你创建更小的EditViews变得如此困难......或许这与事实有关,即使是这样,使用你的手指将光标移动到特定在EditText中的位置(比如修复一个错字而不删除所有内容)元素。如果你的文字更小,这将变得不可能。因此,你应该重新考虑一下,你想要达到什么目的,真的值得追求,除非你只是想减少填充。

0

变化的XML编辑短信这两个属性

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