在EditText中添加图片的主要代码
//创建ImageSpan Bitmap b = BitmapFactory.decodeResource(getResources(),  R.drawable.ic_launcher);// 要显示的图片    String content = "gamedirty";    ImageSpan imageSpan = new ImageSpan(this, b);   SpannableString spannableString = new SpannableString(content);
//使用ImageSpan替换文字
spannableString.setSpan(imageSpan, 0, content.length(),     Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 在EditText中添加 EditText.append(spannableString);

设置图片点击事件的主要代码 分两种情况 第一种是该EditText已经获得了焦点 使用 et.setOnClickListener()监听
第二种是该EditText没有焦点 则在 et.setOnFocusChangedListener()中监听
监听的内容都是一致的     Spanned s = et.getText();//得到Spanned对象
    ImageSpan[] imagespans = s.getSpans(0, s.length(),  ImageSpan.class); //得到该EditText中多有的ImageSpan对象
    int selectStart = et.getSelectionStart(); //获得当前EditText中的光标位置
//遍历所有的 ImageSpan 根据光标位置判断点击的是哪一个ImageSpan     for (ImageSpan span : imagespans) {
     int start = s.getSpanStart(span);      int end = s.getSpanEnd(span);      Log.i("info", "start:" + start + ",end:" + end);      if (selectStart >= start && selectStart <= end) {       Toast.makeText(MainActivity.this, "点击了图片",         Toast.LENGTH_LONG).show();      }     }

更多相关文章

  1. Android实现zip文件压缩及解压缩的方法
  2. Android三种基本的加载网络图片方式
  3. android listview使用glide异步加载图片错位,闪烁问题
  4. android的TextView使用Html(图片显示)格式
  5. android vm heap 虚拟机堆大小 每个应用的堆大小
  6. Android(安卓)EditText控制密码的显示和隐藏
  7. Android实现在屏幕上移动图片的方法
  8. android ButterKnife 解决重复findViewById
  9. 修改ExpandableListView前面展开小图标

随机推荐

  1. Android中AdapterView/Adapter的深度学习
  2. Python 访问 Java 类
  3. Compile gdbserver for Android(gdb-7.1)
  4. Android之system_server与zygote之作用
  5. Android(安卓)TextView中文字设置超链接
  6. android 1.5 SDK 模拟器无法启动问题 “F
  7. Android(安卓)之Activity , Window和View
  8. Android(安卓)Studio上传SVN
  9. android FragmentActivity+FragmentTabHo
  10. 详解Android(安卓)视频播放时停止后台运