如何减小EditText
提示文本的大小?
如何减小EditText
提示文本的大小?
<string name="edittext_hint"><font size="15">Hint here!</font></string>
那么在您的XML中只需编写android:hint="@string/edittext_hint"
这将导致提示文本变小,但输入文本保持原始大小。
希望对未来的读者有所帮助。
EditText
上减小字体大小-这也会减小 hint
的大小。例如: android:textSize="16sp"
。因为我的提示文本在标准大小的EditText中无法适应,所以我也不得不这样做。因此,我在xml中进行了如下设置(将textSize设置为mHintTextSize):
MYEditText.addTextChangedListener(new TextWatcher(){
@Override
public void afterTextChanged(Editable arg0) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1,
int arg2, int arg3) {
// TODO Auto-generated method stub
}
@Override
public void onTextChanged(CharSequence arg0, int start, int before,
int count) {
if (arg0.length() == 0) {
// No entered text so will show hint
editText.setTextSize(TypedValue.COMPLEX_UNIT_SP, mHintTextSize);
} else {
editText.setTextSize(TypedValue.COMPLEX_UNIT_SP, mRealTextSize);
}
}
});
TextWatcher
,只需立即调用 editText.setTextSize(TypedValue.COMPLEX_UNIT_SP, mRealTextSize);
即可。然而,longhairedsi 的解决方案可能更加安全。我很好奇这个问题是否会在新的 SDK 版本中得到修复。 - Peter Fview.setHint(Html.fromHtml("<small><small><small>" +
getString(R.string.hint) + "</small></small></small>"));
这是 fromHtml 接受的标签列表:
http://commonsware.com/blog/Android/2010/05/26/html-tags-supported-by-textview.html
(尽管对我不起作用)。如果您想以编程方式完成它,
SpannableString span = new SpannableString(strHint);
span.setSpan(new RelativeSizeSpan(0.5f), 0, strHint.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
editText.setHint(span);
编辑框的提示文本大小可以很容易地被缩小。
editText.setHint(Html.fromHtml(
"<font size=\"5\">" + "hinttext1" + "</font>" +
"<small>" + "hinttext2" + "</small>" ));
在values文件夹下的strings.xml中定义如下内容:
<string name="enter_otp"><font size="16">your text</font></string>
<small> --- </small>
标签的数量来调整大小。view.setHint(Html.fromHtml("<small><small><small>" +
"这是提示" + "</small></small></small>"));
希望这可以帮助到您。@user2982553的解决方案对我很有用。你也可以使用AbsoluteSizeSpan
,通过它你可以设置提示的确切字体大小。不要使用<font size=\"5\">
标签,因为size
属性会被忽略。