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

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

中尝试了以下属性

XML:

android:maxLength="2"
android:layout_width="20dip"
android:maxWidth="20px"
android:ems="2"
android:maxEms="2"

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

【问题讨论】:

  • 填充属性使用和缩小应用程序中的编辑文本

标签: android android-layout android-xml


【解决方案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_width="fill_parent"
    android:layout_height="fill_parent"
    >

<EditText
    android:width="10dip"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />

<EditText
    android:layout_width="40dip"
    android:layout_height="wrap_content"
    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 的规定大小

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-09
        • 1970-01-01
        • 2015-09-19
        • 2011-02-17
        • 1970-01-01
        相关资源
        最近更新 更多