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