1
我想繪製一個卡片到它的畫布上。不幸的是,Cardview沒有繪製。但是,繪製了一些測試文本。爲什麼我的carview沒有繪製?爲什麼我的卡片視圖不能繪製到畫布上?
代碼:
// start a page
PdfDocument.Page page = document.startPage(pageInfo);
Canvas c = page.getCanvas();
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(1000, 50);
CardView card = new CardView(this);
card.setLayoutParams(params);
card.setRadius(4f);
Bitmap cardBitmap = Utils.loadBitmapFromView(card);
c.drawText("tessssssttt", 30, 30, p);
c.drawBitmap(cardBitmap, new Rect(0,0,1000,50), new Rect(5, 50, 995, 100), p);
document.finishPage(page);
觀爲位圖:
public static Bitmap loadBitmapFromView(View v) {
Bitmap b = Bitmap.createBitmap(v.getLayoutParams().width, v.getLayoutParams().height, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(b);
v.layout(v.getLeft(), v.getTop(), v.getRight(), v.getBottom());
v.draw(c);
return b;
}
我想通了,在'CardView'繪製位圖,但陰影不drawed,所以你認爲'CardView'沒有繪製。還有同樣的問題:http://stackoverflow.com/questions/32931652/cardview-shadow-not-rendered-when-converted-to-bitmap – nshmura
@nshmura我也讀了,並將背景設置爲黑色。還沒有看到。 –