getDrawingCache()方法返回null取决于纵向或横向模式

时间:2013-02-06 11:27:57

标签: android caching bitmap drawing imageview

如果我在横向模式下启动我的应用程序,getDrawingCache()返回我需要的位图,在将方向更改为纵向模式后(当应用程序运行时),getDrawingCache()返回null。 如果我在纵向模式下启动我的应用程序,getDrawingCache()将返回我需要的位图,无论哪个方向都无关紧要。

这里发生了什么?从Landscape或Portrait启动App有什么区别?为什么它会改变getDrawingCache()方法?

以下是我的代码:

mPlaceHolderBitmap = null;
if (imageView.getDrawable() != null) {
    imageView.setDrawingCacheEnabled(true);
    imageView.buildDrawingCache(true);
    mPlaceHolderBitmap = imageView.getDrawingCache(true);
}

我还尝试使用不带布尔值的getDrawingCache或不调用buildDrawingCache但始终相同。

1 个答案:

答案 0 :(得分:0)

当你改变方向时onConfigurationChanged()调用了你用过这个方法???