如何在ListView中创建项目的一部分BitMap。
我的ListView的每个项目都有4个组件,2个TextView和2个Button。 我想在点击Button时只用2 TextView创建一个BitMap。
答案 0 :(得分:0)
您需要的是列表适配器。 看看本教程部分" 3。自定义适配器实现"
http://www.vogella.com/tutorials/AndroidListView/article.html
答案 1 :(得分:0)
您的项目布局包含以下组件:TextView1,TextView2,Button1,Button2。 您必须将TextView1和TextView2放在子布局中,以从位图中排除Button1 + Button2,例如:
<RelativeLayout>
<!-- main item layout -->
<RelativeLayout android:id="@+id/relativeLayoutTextViews">
<!-- child layout for TextViews -->
<TextView>
<!-- text view 1 -->
</TextView>
<TextView>
<!-- text view 2 -->
</TextView>
</RelativeLayout>
<Button>
<!-- Button 1 -->
</Button>
<Button>
<!-- Button 2 -->
</Button>
</RelativeLayout>
在你的java代码中:
RelativeLayout layout = (RelativeLayout) findViewById(R.id.relativeLayoutTextViews);
if (layout != null) {
Bitmap image = Bitmap.createBitmap(layout.getWidth(),
layout.getHeight(), Config.ARGB_8888);
Canvas b = new Canvas(image);
Drawable bgDrawable =layout.getBackground();
if (bgDrawable!=null)
bgDrawable.draw(canvas);
else
canvas.drawColor(Color.WHITE);
layout.draw(b);}
}