当前位置: 移动技术网 > IT编程>移动开发>Android > Android EditText实现输入表情

Android EditText实现输入表情

2019年07月24日  | 移动技术网IT编程  | 我要评论

琅琊榜广播剧,香港三圾片在线观看,兖州房产网

一、简介

edittext是textview的子类,textview能用的工具edittext都能用,这里就是edittext利用spannablestring的imagespan实现输入表情的功能

类结构图:

二、方法

1)edittext利用spannablestring的imagespan实现添加表情的方法

第一步:创建spannablestring对象spannablestring

spannablestring spannablestring=new spannablestring("d");

第二步:利用spannablestring的setspan方法添加imagespan

imagespan imagespan=new imagespan(this, bitmapfactory.decoderesource(getresources(),r.drawable.image1));
spannablestring.setspan(imagespan, 0, 1, spannable.span_exclusive_exclusive);

第三步:在edittext对象中添加spannablestring

et_emotion.append(spannablestring);

三、代码实例

效果图:

代码:

 fry.activity01

package fry;
import com.example.edittextdemo1.r;
import android.app.activity;
import android.graphics.bitmapfactory;
import android.os.bundle;
import android.text.spannable;
import android.text.spannablestring;
import android.text.style.imagespan;
import android.view.view;
import android.view.view.onclicklistener;
import android.widget.button;
import android.widget.edittext;
public class activity01 extends activity implements onclicklistener{
 private edittext et_emotion;
 private button bt_addemotion;
 @override
 protected void oncreate(bundle savedinstancestate) {
  // todo auto-generated method stub
  super.oncreate(savedinstancestate);
  setcontentview(r.layout.activity01);
  et_emotion=(edittext) findviewbyid(r.id.et_emotion);
  bt_addemotion=(button) findviewbyid(r.id.bt_addemotion);
  bt_addemotion.setonclicklistener(this);
 }
 @override
 public void onclick(view arg0) {
  // todo auto-generated method stub
  /*
   * edittext利用spannablestring的imagespan实现添加表情的方法
   * 第一步:创建spannablestring对象spannablestring
   * 第二步:利用spannablestring的setspan方法添加imagespan
   * 第三步:在edittext对象中添加spannablestring
   * 
   */
  spannablestring spannablestring=new spannablestring("d");
  imagespan imagespan=new imagespan(this, bitmapfactory.decoderesource(getresources(),r.drawable.image1));
  spannablestring.setspan(imagespan, 0, 1, spannable.span_exclusive_exclusive);
  et_emotion.append(spannablestring);
 }
}

/edittextdemo1/res/layout/activity01.xml

<?xml version="1.0" encoding="utf-8"?>
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical" >
 <edittext
  android:id="@+id/et_emotion"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:ems="10" >
  <requestfocus />
 </edittext>
 <button
  android:id="@+id/bt_addemotion"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:text="button" />
</linearlayout>

总结

以上所述是小编给大家介绍的android edittext实现输入表情,希望对大家有所帮助

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网