Я создал цикл анимации, который я запускаю как операцию, чтобы остальная часть моего интерфейса реагировала. Хотя почти там, есть еще одна проблема. Кажется, что мои UIScrollViews не надёжно реагируют, когда пользователь нажимает. Это означает, например, что если пользователь перетаскивает вид прокрутки, когда он поднимает пальцы, вид прокрутки не возвращается на место и полоса прокрутки остается видимой. Как будто палец не покинул экран. Требуется еще одно нажатие на вид прокрутки, чтобы привязать его к правильному положению, а полоса прокрутки исчезнуть ...
Вот цикл, который я создал в подклассе NSOperation:
- (void)main
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSRunLoop *runLoop = [NSRunLoop currentRunLoop];
_displayLink = [[CADisplayLink displayLinkWithTarget: self selector: @selector(animationLoop:)] retain];
[_displayLink setFrameInterval: 1.0f];
[_displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode: NSRunLoopCommonModes];
while (![self isCancelled])
{
NSAutoreleasePool *loopPool = [[NSAutoreleasePool alloc] init];
[runLoop runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
[loopPool drain];
}
[_displayLink invalidate];
[pool release];
}
Кажется, что во время этой операции дела идут немного странно ...
Кто-нибудь знает, что здесь происходит, и еще лучше, как это исправить ...
Спасибо!