當前位置: 首頁>>代碼示例>>Java>>正文


Java LayerDrawable.draw方法代碼示例

本文整理匯總了Java中android.graphics.drawable.LayerDrawable.draw方法的典型用法代碼示例。如果您正苦於以下問題:Java LayerDrawable.draw方法的具體用法?Java LayerDrawable.draw怎麽用?Java LayerDrawable.draw使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在android.graphics.drawable.LayerDrawable的用法示例。


在下文中一共展示了LayerDrawable.draw方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: onDraw

import android.graphics.drawable.LayerDrawable; //導入方法依賴的package包/類
@Override
protected void onDraw(Canvas canvas) {

	Drawable drawable = getDrawable();

	if (drawable == null) {
		return;
	}

	if (getWidth() == 0 || getHeight() == 0) {
		return;
	}

	Bitmap b = null;
	if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP
			&& drawable instanceof VectorDrawable) {
		((VectorDrawable) drawable).draw(canvas);
		b = Bitmap.createBitmap(canvas.getWidth(), canvas.getHeight(), Bitmap.Config.ARGB_8888);
		Canvas c = new Canvas();
		c.setBitmap(b);
		drawable.draw(c);
	} else if (drawable instanceof BitmapDrawable){
		b = ((BitmapDrawable) drawable).getBitmap();
	} else if (drawable instanceof LayerDrawable) {
		LayerDrawable layerDrawable = (LayerDrawable) drawable;
		b = Bitmap.createBitmap(canvas.getWidth(), canvas.getHeight(), Bitmap.Config.ARGB_8888);
		layerDrawable.draw(new Canvas(b));
	}
	Bitmap bitmap = b.copy(Bitmap.Config.ARGB_8888, true);
	int w = getWidth(), h = getHeight();

	Bitmap roundBitmap =  getCroppedBitmap(bitmap, w);
	canvas.drawBitmap(roundBitmap, 0,0, null);
}
 
開發者ID:SebastianRask,項目名稱:Pocket-Plays-for-Twitch,代碼行數:35,代碼來源:RoundedImageView.java


注:本文中的android.graphics.drawable.LayerDrawable.draw方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。