0
首先,我的应用程序目前在清单文件中定义了anyDensity = false。在应用程序的其他地方,我试图捕获并显示一个View的DrawingCache,但是我无法获得清晰的位图而没有缩放工件。anyDensity = false为什么getDrawingCache(true)返回null?
下面的代码产生一个位图,但它具有缩放伪像,并且通常是模糊的。
myView.setDrawingCacheEnabled(true);
Bitmap myBitmap = Bitmap.Create(myView.getDrawingCache());
myImageView.setImageBitmap(myBitmap);
当我读到它,为getDrawingCache的文件说,这是可以预期的,并使用getDrawingCache(真)。但是,下面的两个代码示例都会抛出NullPointer异常,因为getDrawingCache返回的位图(true)始终为空。
myView.setDrawingCacheEnabled(true);
Bitmap myBitmap = Bitmap.Create(myView.getDrawingCache(true));
myImageView.setImageBitmap(myBitmap);
OR
myView.buildDrawingCache(true);
Bitmap myBitmap = Bitmap.Create(myView.getDrawingCache(true));
myImageView.setImageBitmap(myBitmap);
myView.destroyDrawingCache();
有谁知道如何正确地捕捉和渲染drawingCache时anyDensity =假?