您的位置:首页 > 移动开发 > Android开发

android:edittext 输入问题

2014-01-13 14:27 302 查看
实现在EditText中输入自定义表情,需要将放在drawable中的表情图片,嵌入到EditText中,这里利用ImageSpan实现该功能。

第一步:利用反射机制,得到图片资源的ID,生成图片bitmap对象

Field field = R.drawable.class.getDeclaredField("image" + random);

int resouceId = Integer.parseInt(field.get(null).toString());

Bitmap bitmap = BitmapFactory.decodeResource(getResources(), resouceId);

第二步:创建imageSpan对象,将imageSpan对象加载到spannableString中

ImageSpan span = new ImageSpan(getApplicationContext(), bitmap);

SpannableString spanna = new SpannableString("image");

spanna.setSpan(span, 0, 4, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

第三步:将SpannableString对象加到EditText中

edittext.append(spanna);

如何在EditText中限定输入字符的方式:

1.通过设置digits属性限定输入的字符:android:digits="0123456789"

2.通过设置inputtype属性选择输入字符类型:android:inputType="number"

3.通过设置numberic属性接受数字输入:android:numeric="integer"

android:inputType来设置文本的类型,让输入法选择合适的软键盘的.

android:numeric来控制输入的数字类型,一共有三种分别为integer(正整数)、signed

(带符号整数)和decimal(浮点数).
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: