在我的应用程序中,我将出现一个屏幕,在该屏幕中,我将放置编辑文本字段,在该编辑文本字段下方,我将使用选择和保存按钮,在编辑文本字段内,我将输入一些文本并在光标指向那个地方之后,我必须添加图像,我想使用选择按钮从图库中获取图像,然后再次将图像放入编辑文本字段中,然后我想输入一些东西我要单击保存按钮,将编辑文本字段作为图像保存到图库中,这是我在 Google 中搜索过的其他内容,但我找不到任何解决方案,请任何人帮助我。
问问题
1633 次
1 回答
1
EditText 是一种视图。将该视图转换为位图并将它们存储在您想要的任何位置。而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);
于 2014-05-26T04:56:31.637 回答