我創建了一個自定義的WebView,它將用於播放gif文件。現在我需要把它畫到我的畫布上,並且使用一定的尺寸。將WebView繪製到畫布上的設置位置
但是,我並不確定如何將包含Gif的此webView轉換爲位圖,以便將其插入到Canvas上的正確位置。
我的WebView類:
public class finishWebView extends WebView
{
public finishWebView(Context context, String path)
{
super(context);
loadUrl(path);
}
}
獲得了主要活動的原始資源:
finishWebView view = new finishWebView(context, "file:///android_asset/test.gif");
原單碼到我的圖像轉換爲正確的尺寸,並插入到畫布:
finish = BitmapFactory.decodeResource(getResources(), R.drawable.finish);
finish = Bitmap.createScaledBitmap(finish, (PhoneWidth/5), (PhoneWidth/5), true);
protected void onDraw(Canvas canvas)
{
canvas.drawBitmap(finish, (j * totalCellWidth), (i * totalCellHeight), null);
}
所以基本上,我需要找出一種方法來繪製與gif圖像顯示webView到我畫布中的指定位置,類似於我目前用'canvas.drawBitmap(...)'所做的。
-----------------------------------編輯---------- ------------------------------
使用上面提到的代碼片段mikejonesguy,我已經到了這裏,但是這現在只是顯示一個空白屏幕。
public static Bitmap createBitmapFromView(View v) {
Bitmap b = Bitmap.createBitmap(100, 100, Bitmap.Config.RGB_565);
Canvas c = new Canvas(b);
v.draw(c);
return b;
}
// Within onDraw
GIFView gifView = new GIFView(context);
canvas.drawBitmap(createBitmapFromView(gifView), (j * totalCellWidth), (i * totalCellHeight), null);
我已經測試了正常的XML佈局頁我GIFView和它工作正常,只是不能把它插入到我的畫布。
我通過擴展查看,而網頁視圖中創建GifView和它的工作fine.And它從玩GIF圖像的能力SD卡和資源也。 –
你有沒有任何示例代碼,讓我知道你是如何實現它,以及如何將它添加到我的onDraw中具有動態大小的設置位置? –