0

関数呼び出しループがありますが、ビューが表示されたときに呼び出し、ビューが消えたときに呼び出したくありません。

ループ機能:

-(void)updateArray
   {

    while (1)
    {
        NSLog(@"IN LOOP");
        [NSThread sleepForTimeInterval:2.0];
        if([FileSizeArray count] >0 || [FileCurrentSizeArray count] >0)
        {
            [FileSizeArray removeObjectsInRange:NSMakeRange(1, FileSizeArray.count-1)];
            [FileCurrentSizeArray removeObjectsInRange:NSMakeRange(1, FileSizeArray.count-1)];
        }
        [FileNameArray removeAllObjects];
        [UserNameArray removeAllObjects];
        ...
}

そして、ViewWillAppear()

timer= [NSTimer scheduledTimerWithTimeInterval: 2.0
                                              target: self
                                              selector:@selector(updateArray:)
                                              userInfo: nil repeats:NO];

そして、DidDisAppear()

[timer invalidate];
timer = nil;

しかし、それは機能していません。まだ呼び出しており、アプリがクラッシュしています。

誰でも私を助けることができますか?前もって感謝します

4

2 に答える 2