문제

i am using the following code to catch an error when ind.row is not a valid value or sometimes it becomes nil

@try {
        if(ind.row<[[treeNode flattenElements] count])
        {
            [self.mTableView scrollToRowAtIndexPath:ind atScrollPosition:UITableViewScrollPositionTop animated:YES];
        }


    }
    @catch (NSException *e) {
        NSLog(@"%@",e);

    }   

but when this code executes sometimes this error is occuring

Assertion failure in -[NSIndexPath row], /SourceCache/UIKit_Sim/UIKit-1262.60.3/UITableViewSupport.m:1948`

what may be the reason for this error and why exception is not being handled

도움이 되었습니까?

해결책 3

actually it was already catching the exceptions...i had set the flag stop on objc exceptions.when i removed that it catching the exceptions.... as pointed out by @stilesCrisis the ind value was null at the time of this exception..sorry for the trble

다른 팁

Assertions in iOS don't throw exceptions, so you can't catch them.

You are going to need to figure out what's wrong with your call to -row. My first guess would be that "ind" is already freed or something.

You'll have to check the index, generate and raise an exception on you own:NSException Class Reference

+ (void)raise:(NSString *)name format:(NSString *)format, ...
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top