返回介绍

EditText

发布于 2025-03-09 17:00:28 字数 10479 浏览 0 评论 0 收藏 0

EditText

农民伯伯

版本:Android 2.2

java.lang.Object

android.view.View

android.widget.TextView

android.widget.EditText

直接子类:

AutoCompleteTextView, ExtractEditText

间接子类:

MultiAutoCompleteTextView

继承自 TextView 的 xml 属性说明:

属性名称描述
android:autoLink设置是否当文本为 URL 链接/email/电话号码/map 时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all)。这里只有在同时设置 text 时才自动识别链接,后来输入的无法自动识别。
android:autoText自动拼写帮助。这里单独设置是没有效果的,可能需要其他输入法辅助才行,效果参见 视频
android:bufferType指定 getText() 方式取得的文本类别。选项 editable 类似于 StringBuilder 可追加字符,

也就是说 getText 后可调用 append 方法设置文本内容。spannable 则可在给定的字符区域使用样式,参见 这里 1这里 2

android:capitalize设置英文字母大写类型。设置如下值:sentences 仅第一个字母大写;words 每一个单词首字母大小,用空格区分单词;characters 每一个英文字母都大写。在模拟器上用 PC 键盘直接输入可以出效果,但是用软键盘无效果。
android:cursorVisible设定光标为显示/隐藏,默认显示。如果设置 false,即使选中了也不显示光标栏。
android:digits设置允许输入哪些字符。如“1234567890.+-*/%\n()”
android:drawableTop在 text 的正上方输出一个 drawable。在 EditView 中的效果比较搞笑:,居然在文本框里,而且删不了。
android:drawableBottom在 text 的下方输出一个 drawable(如图片)。如果指定一个颜色的话会把 text 的背景设为该颜色,并且同时和 background 使用时覆盖后者。
android:drawableLeft在 text 的左边输出一个 drawable(如图片)。
android:drawablePadding设置 text 与 drawable(图片) 的间隔,与 drawableLeft、drawableRight、drawableTop、drawableBottom 一起使用,可设置为负数,单独使用没有效果。
android:drawableRight在 text 的右边输出一个 drawable,如图片。
android:editable设置是否可编辑。仍然可以获取光标,但是无法输入。
android:editorExtras指定特定输入法的扩展,如“com.mydomain.im.SOME_FIELD”。源码跟踪至 EditorInfo.extras,暂无相关实现代码。
android:ellipsize设置当文字过长时,该控件该如何显示。有如下值设置:”start”—–省略号显示在开头;”end”——省略号显示在结尾;”middle”—-省略号显示在中间;”marquee” ——以 跑马灯 的方式显示(动画横向移动)
android:freezesText设置保存文本的内容以及光标的位置。参见: 这里
android:gravity设置文本位置,如设置成“center”,文本将居中显示。
android:hintText 为空时显示的文字提示信息,可通过 textColorHint 设置提示信息的颜色。
android:imeOptions设置软键盘的 Enter 键。有如下值可设置:normal,actionUnspecified,actionNone,actionGo,actionSearch,actionSend,actionNext,actionDone,flagNoExtractUi,flagNoAccessoryAction,flagNoEnterAction。可用’|’设置多个。这里仅设置显示图标之用,参见文章末尾例子。
android:imeActionId设置 IME 动作 ID,在 onEditorAction 中捕获判断进行逻辑操作。
android:imeActionLabel设置 IME 动作标签。但是不能保证一定会使用,猜想在输入法扩展的时候应该有用。
android:includeFontPadding设置文本是否包含顶部和底部额外空白,默认为 true。
android:inputMethod为文本指定输入法,需要完全限定名(完整的包名)。例如:com.google.android.inputmethod.pinyin,但是这里报错找不到。关于自定义输入法参见 这里

sentences 仅第一个字母大写;words 每一个单词首字母大小,用空格区分单词;characters 每一个英文字母都大写

android:inputType设置文本的类型,用于帮助输入法显示合适的键盘类型。有如下值设置:none、text、textCapCharacters 字母大小、textCapWords 单词首字母大小、textCapSentences 仅第一个字母大小、textAutoCorrect、textAutoComplete 自动完成、textMultiLine 多行输入、textImeMultiLine 输入法多行(如果支持)、textNoSuggestions 不提示、textEmailAddress 电子邮件地址、textEmailSubject 邮件主题、textShortMessage 短信息(会多一个表情按钮出来,点开如下图:

)、textLongMessage 长讯息?、textPersonName 人名、textPostalAddress 地址、textPassword 密码、textVisiblePassword 可见密码、textWebEditText 作为网页表单的文本、textFilte 文本筛选过滤、textPhonetic 拼音输入、numberSigned 有符号数字格式、numberDecimal 可带小数点的浮点格式、phone 电话号码、datetime 时间日期、date 日期、time 时间。部分参考 这里

android:marqueeRepeatLimit在 ellipsize 指定 marquee 的情况下,设置重复滚动的次数,当设置为 marquee_forever时表示无限次。
android:ems设置 TextView 的宽度为 N 个字符的宽度。参见 TextView 中此属性的截图。
android:maxEms设置 TextView 的宽度为最长为 N 个字符的宽度。与 ems 同时使用时覆盖 ems 选项。
android:minEms设置 TextView 的宽度为最短为 N 个字符的宽度。与 ems 同时使用时覆盖 ems 选项。
android:maxLength限制输入字符数。如设置为 5,那么仅可以输入 5 个汉字/数字/英文字母。
android:lines设置文本的行数,设置两行就显示两行,即使第二行没有数据。
android:maxLines设置文本的最大显示行数,与 width 或者 layout_width 结合使用,超出部分自动换行,超出行数将不显示。
android:minLines设置文本的最小行数,与 lines 类似。
android:linksClickable设置链接是否点击连接,即使设置了 autoLink。
android:lineSpacingExtra设置行间距。
android:lineSpacingMultiplier设置行间距的倍数。如”1.2”
android:numeric如果被设置,该 TextView 有一个数字输入法。有如下值设置:integer 正整数、signed 带符号整数、decimal 带小数点浮点数。
android:password以小点”.”显示文本
android:phoneNumber设置为电话号码的输入方式。
android:privateImeOptions提供额外的输入法选项(字符串格式)。依据输入法而决定是否提供,如 这里 所见。自定义输入法继承

InputMethodService。 这篇 文章也许有帮助。

android:scrollHorizontally设置文本超出 TextView 的宽度的情况下,是否出现横拉条。
android:selectAllOnFocus如果文本是可选择的,让他获取焦点而不是将光标移动为文本的开始位置或者末尾位置。TextView 中设置后无效果。
android:shadowColor指定文本阴影的颜色,需要与 shadowRadius 一起使用。参见 TextView 中此属性的截图。
android:shadowDx设置阴影横向坐标开始位置。
android:shadowDy设置阴影纵向坐标开始位置。
android:shadowRadius设置阴影的半径。设置为 0.1 就变成字体的颜色了,一般设置为 3.0 的效果比较好。
android:singleLine设置单行显示。如果和 layout_width 一起使用,当文本不能全部显示时,后面用“…”来表示。如 android:text="test_ singleLine " android:singleLine="true" android:layout_width="20dp"将只显示“t…”。如果不设置 singleLine 或者设置为 false,文本将自动换行
android:text设置显示文本。
android:textAppearance
设置文字外观。如“?android:attr/textAppearanceLargeInverse

”这里引用的是系统自带的一个外观,?表示系统是否有这种外观,否则使用默认的外观。可设置的值如下:textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse/textAppearanceSmall/textAppearanceSmallInverse

android:textColor设置文本颜色
android:textColorHighlight被选中文字的底色,默认为蓝色
android:textColorHint设置提示信息文字的颜色,默认为灰色。与 hint 一起使用。
android:textColorLink文字链接的颜色。
android:textScaleX设置文字缩放,默认为 1.0f。参见 TextView 的截图。
android:textSize设置文字大小,推荐度量单位”sp”,如”15sp”
android:textStyle设置字形[bold(粗体) 0, italic(斜体) 1, bolditalic(又粗又斜) 2] 可以设置一个或多个,用“|”隔开
android:typeface设置文本字体,必须是以下常量值之一:normal 0, sans 1, serif 2, monospace(等宽字体) 3]
android:height设置文本区域的高度,支持度量单位:px(像素)/dp/sp/in/mm(毫米)
android:maxHeight设置文本区域的最大高度
android:minHeight设置文本区域的最小高度
android:width设置文本区域的宽度,支持度量单位:px(像素)/dp/sp/in/mm(毫米),与 layout_width 的区别看 这里
android:maxWidth设置文本区域的最大宽度
android:minWidth设置文本区域的最小宽度

android:imeOptions 例子:

<EditText android:id= "@+id/txtTest" android:imeOptions= "actionGo"

android:layout_width= "100dp" android:layout_height= "wrap_content" ></EditText>

((EditText)findViewById(R.id. txtTest )).setOnEditorActionListener( new TextView.OnEditorActionListener() {

@Override

public boolean onEditorAction(TextView v, int actionId,

KeyEvent event) {

if (actionId == EditorInfo. IME_ACTION_GO ) {

Toast. makeText (TestActivity. this , "你点了 Go!", Toast. LENGTH_SHORT ).show();

}

return false ;

}

});

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文