软件编程
位置:首页>> 软件编程>> Android编程>> Android实现EditText中添加和删除bitmap的方法

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

作者:nosxcy  发布时间:2022-04-02 00:51:14 

标签:Android,EditText,bitmap

本文实例讲述了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程序设计有所帮助。

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com