溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Android獲得bitmap的大小

發(fā)布時(shí)間:2020-06-13 04:43:19 來(lái)源:網(wǎng)絡(luò) 閱讀:7030 作者:飛翔的貓咪 欄目:移動(dòng)開(kāi)發(fā)

最近剛進(jìn)入新公司實(shí)習(xí),在查看項(xiàng)目代碼的時(shí)候看到以前的同事是這么寫的代碼獲取Bitmap的大?。?/span>

    return bitmap.getRowBytes() * bitmap.getHeight();// 獲取大小并返回

感覺(jué)很奇怪,為什么要這樣計(jì)算而不是直接調(diào)用bitmap.getByteCount();呢?

查閱文檔之后才知道,這個(gè)項(xiàng)目的minSDK=8,targetSDK=19,因此無(wú)法直接調(diào)用,而要通過(guò)這樣的方式寫。但是,我還是覺(jué)得這樣寫不嚴(yán)謹(jǐn),因?yàn)閷?duì)于API LEVEL 12以后的版本還是該使用新的方法。

這里總結(jié)一下獲取Bitmap圖片大小的代碼:

	public int getBitmapSize(Bitmap bitmap){
		if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT){		//API 19
			return bitmap.getAllocationByteCount();
		}
		if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB_MR1){//API 12
			return bitmap.getByteCount();
		}
		return bitmap.getRowBytes() * bitmap.getHeight();				//earlier version
	}


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI