如何检查Bitmap
对象是否完全空白,即所有像素都是透明的,每个像素上都没有x-y循环?
答案 0 :(得分:30)
您可以使用以下命令检查位图实例(在示例myBitmap
中)中是否为空
Bitmap emptyBitmap = Bitmap.createBitmap(myBitmap.getWidth(), myBitmap.getHeight(), myBitmap.getConfig());
if (myBitmap.sameAs(emptyBitmap)) {
// myBitmap is empty/blank
}
答案 1 :(得分:0)
您可以非常轻松地完成此操作,但这取决于应用程序。 如果您有一个提示用户输入图形输入(例如签名或类似内容)的应用程序,则通常会有一个ArrayList of Paths绘制到该视图的Canvas中。您可以在想要返回BitMap外观时进行检查,以查看Path的ArrayList是否大于0,如果大于0,则返回BitMap,否则返回null。
答案 2 :(得分:-1)
这不是解决问题的有效方法,但确实可以解决问题 因为即使在文档
中,我也找不到解决方案请参见位图为空时,无法获取其宽度或高度,这会导致崩溃,因此这里可以解决您的问题
try{
int check=bitmap.getWidth();
// the bitmap is valid & not null or empty
}catch (Exception w){
// the bitmap, not valid eighter null or empty
}
希望这会有所帮助:)