欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android实现EditText中添加和删除bitmap的方法

程序员文章站 2024-02-19 08:01:40
本文实例讲述了android实现edittext中添加和删除bitmap的方法。分享给大家供大家参考,具体如下: spannablestring mspan1 =...

本文实例讲述了android实现edittext中添加和删除bitmap的方法。分享给大家供大家参考,具体如下:

spannablestring mspan1 = new spannablestring("1");
/*
* this is add bitmap on edit text
*/
private void displaybitmapontext(bitmap thumbnailbitmap) {
if(thumbnailbitmap == null)
return;
    int start = medittext.getselectionstart();
    mspan1.setspan(new imagespan(thumbnailbitmap) , mspan1.length() - 1, mspan1.length(), spanned.span_exclusive_exclusive);
//    mspan1.tostring();
    if(medittext != null) {
      editable et = medittext.gettext();
      et.insert(start, mspan1);
      medittext.settext(et);
      medittext.setselection(start + mspan1.length());
    }
    medittext.setlinespacing(10f, 1f);
}
/*
* this is delete bitmap on edit text
* from end to start
*/
private void deleteedittextspan() {
    spanned s = medittext.geteditabletext();
    imagespan[] imagespan = s.getspans(0, s.length(), imagespan.class); 
    for (int i = imagespan.length - 1; i >= 0; i--) {
      if(i == imagespan.length - 1) {
        int start = s.getspanstart(imagespan[i]);
        int end = s.getspanend(imagespan[i]);
        editable et = medittext.gettext();
        et.delete(start, end);
      }
    }
    medittext.invalidate();
}

ps:关于删除,网上找了很多都是直接调用软键盘,然后再来删除。这种不是我想要的,这个deleteedittextspan() 由一个自定义的按键触发

更多关于android组件相关内容感兴趣的读者可查看本站专题:《android基本组件用法总结

希望本文所述对大家android程序设计有所帮助。