在我的应用程序中,我将出现一个屏幕,在该屏幕中,我将把编辑文本字段放在编辑文本字段下面,我将使用选择并保存按钮,在编辑文本字段中,我要输入一些文字,然后光标指向那个地方,我必须添加图像,我想使用选择按钮从图库中拍摄图像,然后再将图像放入编辑文本字段我想要输入一些东西之后,我将点击保存按钮,将保存为图像的文本字段编辑到图库中是我在谷歌搜索过的有关此事的其他内容,但我无法找到任何解决方案,任何人都可以帮助我。
答案 0 :(得分:1)
EditText是一种View。将该视图转换为位图并将其存储在您想要的位置。而Java代码就是
// capture bitmapt of genreated textview
int spec = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED);
textView.measure(spec, spec);
textView.layout(0, 0, textView.getMeasuredWidth(), textView.getMeasuredHeight());
Bitmap b = Bitmap.createBitmap(textView.getWidth(), textView.getHeight(),Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(b);
canvas.translate(-textView.getScrollX(), -textView.getScrollY());
textView.draw(canvas);
textView.setDrawingCacheEnabled(true);
Bitmap cacheBmp = textView.getDrawingCache();
Bitmap viewBmp = cacheBmp.copy(Bitmap.Config.ARGB_8888, true);
textView.destroyDrawingCache(); // destory drawable
中查找完整示例
在EditText中设置图像
SpannableStringBuilder ssb = new SpannableStringBuilder("");
BitmapDrawable bmpDrawable = new BitmapDrawable(viewBmp);
bmpDrawable.setBounds(0, 0,bmpDrawable.getIntrinsicWidth(),bmpDrawable.getIntrinsicHeight());
// create and set imagespan
ssb.setSpan(new ImageSpan(bmpDrawable),x ,x + c.length() , Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
edtText.setText(ssb);