我想将MyView的扩展TextView的内容保存(导出)为位图。将文本视图(包括屏幕上的内容)转换为位图
我跟着代码:[this] [1]。
当文本的大小很小时,它工作正常。
但是,当有很多文本,并且一些内容不在屏幕上时,我得到的只是屏幕上显示的内容。
然后,我在我的代码添加一个“布局”:
private class MyView extends TextView{
public MyView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
public Bitmap export(){
Layout l = getLayout();
int width = l.getWidth() + getPaddingLeft() + getPaddingRight();
int height = l.getHeight() + getPaddingTop() + getPaddingBottom();
Bitmap viewBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(viewBitmap);
setCursorVisible(false);
layout(0, 0, width, height);
draw(canvas);
setCursorVisible(true);
return viewBitmap;
}
}
现在,奇怪的事情发生了:
我第一次调用“出口”(我用的选项键来做到这一点) ,我只在屏幕上看到内容。
当我再次调用“导出”时,我得到了完整的内容,包括那些不在屏幕上的内容。
为什么?
如何“导出”一个视图,包括内容无法显示在屏幕上?
谢谢!
[1]:http://www.techjini.com/blog/2010/02/10/quicktip-how-to-convert-a-view-to-an-image-android/此
感谢您的提醒。但是这并没有回答我的问题。 – 2011-02-19 09:27:32