setHint不适用于setInputType

时间:2012-06-01 11:08:08

标签: android android-edittext hint

我动态构建EditText。除此之外,我设置了2个属性:提示(.setHint)和inputType(.setInputType)。我的问题:当我调用setInputType时,setHint没有效果:空白的edittexts保持空白,没有提示。一旦我注释掉setInputType,我就会看到所有提示。我需要输入类型和提示。该怎么办?我的代码:

    private EditText buildTextBox(Property property)
{
    EditText control = new EditText(this);
    control.setInputType(getInputTypeByPropertyInputType(property.getType()));// android.text.InputType.
    control.setHint(property.getDisplayName());
    return control;
}

private int getInputTypeByPropertyInputType(String type)
{
    if (type.equals("integer"))
    {
        return android.text.InputType.TYPE_CLASS_NUMBER;
    }
    else
    {
        return android.text.InputType.TYPE_CLASS_TEXT;
    }
}

2 个答案:

答案 0 :(得分:2)

@Eugene 确保在调用control.setGravity()和control.setInputType()之前调用control.SetHint();这对我很有用!

            column1 = new EditText(this);
            column1.setId(i);
            column1.setHint("Value");
            column1.setInputType(InputType.TYPE_CLASS_NUMBER);
            column1.setGravity(Gravity.RIGHT);

答案 1 :(得分:0)

我同意尤金。 删除重力(只是不要使用CENTER),提示文本将恢复正常。 很好找!