如何使 EditText 小于默认值?

Posted

技术标签:

【中文标题】如何使 EditText 小于默认值?【英文标题】:How to make EditText smaller than default? 【发布时间】:2010-10-13 18:39:17 【问题描述】:

我需要在屏幕上显示大量 EditText 控件,每个控件只允许输入 0-2 位数字。默认的 EditText 大小太宽,我无法在屏幕上显示足够的 EditText 控件,但我一直无法弄清楚如何使它们变窄。我在

中尝试了以下属性

XML:

android:maxLength="2"
android:layout_
android:maxWidth="20px"
android:ems="2"
android:maxEms="2"

所以问题是:如何让 EditText 小于默认值?

【问题讨论】:

填充属性使用和缩小应用程序中的编辑文本 【参考方案1】:

尝试这种方式,显示差异。使用指定宽度的 layout_width。

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

<EditText
    android:
    android:layout_
    android:layout_
    android:text="@string/hello"
    />

<EditText
    android:layout_
    android:layout_
    android:text="@string/hello"
    android:maxLength="2"
    />

</LinearLayout>

【讨论】:

这实际上看起来和我的默认值一样宽。如果 EditText 中只有两个字符,它看起来如何? 好的,我明白你的意思了。如果没有指定宽度,则默认使用文本的整个宽度,直到屏幕的宽度。 啊,明白了。我的问题是我有一个表格中的控件,并且只更改一个并没有改变。一旦我改变了它们,我就看到了变化。【参考方案2】:

嘿,一旦你尝试这个,它可能会起作用....... android:textAppearance="?android:attr/textAppearanceSmall"

【讨论】:

【参考方案3】:

如果您最终在此页面上搜索如何在 Java 代码中实现相同的功能..

txtSample.setFilters(new InputFilter[]new InputFilter.LengthFilter(2));

【讨论】:

【参考方案4】:

如您所描述的,在表格中时,android:layout_gravity="left" 会将 EditText 折叠到 EditText 的规定大小

【讨论】:

以上是关于如何使 EditText 小于默认值?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Holo 主题 Api 11-17 Android 中以编程方式将 EditText 背景设置为默认值

Android 如何使edittext默认失去焦点

带有 inputType numberDecimal 的 Android EditText 字段设置默认值

edittext.settext() 将键盘类型更改为默认值 [从 ?123 到 ABC]

EditText android:text 设置的默认值运行的时候为空并且不能滚动

android中怎样设置一个EditText里的默认值是1