我想知道如何删除重复的nsoperations,即有没有办法检查nsoperation队列,看看我是否正在发出重复的请求?
基本上,我根据iphone屏幕旋转请求图像。加载视图时,将调用两次。
If(rotation==portrait){
request portrait image.
}
问题是将会检查两次自动旋转。在两个场合,它都会变成肖像,因此请求两次相同的图像。谁有好主意?我忘了提到我正在使用队列。
感谢。
答案 0 :(得分:1)
新的,更好的答案:
请勿使用shouldAutorotate...
方法。只有询问是否允许轮换发生。这可能在任何时候发生,并且可能不一定导致轮换。相反,请使用willRotate...
或didRotate...
,因为这些方法只会在中完全调用一次并且仅在实际发生轮换时才会调用。
您的操作只会添加一次。
OLD,但不是错误答案:
如何使用实例变量来记住上次看到的旋转?像这样:
if (rotation != lastSeenRotation) {
// REQUEST image here
}