Android 如何获取Listview所有子视图(可见和不可见)
我的问题类似于 我需要将所有listview项目保存到位图,listview项目由textview膨胀。无论它们在视图中可见或不可见 我想获取所有子视图并转换为位图,我尝试了以下操作:Android 如何获取Listview所有子视图(可见和不可见),android,listview,bitmap,Android,Listview,Bitmap,我的问题类似于 我需要将所有listview项目保存到位图,listview项目由textview膨胀。无论它们在视图中可见或不可见 我想获取所有子视图并转换为位图,我尝试了以下操作: view = adapter.getView(i,null,lv); view.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.
view = adapter.getView(i,null,lv);
view.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED),
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
Bitmap bitmap = Bitmap.createBitmap(view.getMeasuredWidth()
view.getMeasuredHeight(), Bitmap.Config.ARGB_8888);
bitmap.eraseColor(Color.WHITE);
Canvas canvas = new Canvas(bitmap);
canvas.translate(10, 10);
view.draw(canvas);
mybitmap = combineImages(mybitmap, bitmap);
但是,如果项目文本太多(其中一些包含长文本),则view.getMeasuredWidth()和view.getMeasuredHeight()方法将无法正常工作
我想知道我对这个问题的看法是否正确,如果不对,我该如何解决 使用以下方法修复:
view.measure(MeasureSpec.makeMeasureSpec(lv.getWidth(),
MeasureSpec.AT_MOST), MeasureSpec.makeMeasureSpec(0,
MeasureSpec.UNSPECIFIED));
您可以使用适配器的
getCount()
。是的,在我的代码中,变量'I'位于for语句中,其中'I'循环到adapter.getCount()