Search code examples
crashios6uipickerview

Assertion failure on picker view


I'm getting an assertion failure while scrolling a picker view w/ zero data(zero rows). While scrolling the picker view I'm getting this crash. Testing on iOS 6

* Assertion failure in -[UITableViewRowData rectForRow:inSection:], /SourceCache/UIKit_Sim/UIKit-2372/UITableViewRowData.m:1630

* Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'request for rect at invalid index path ( 2 indexes [0, 0])'

Any help is appreciable.


Solution

  • I've the same problem

    I don't know reason why it is happen,

    but it can be fixed in ios6 (how it works in ios5 I didn't check):

    - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
    {
        if ([self getCount] == 0)
            return 1;
         return [self getCount];
    }
    
    - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:   (NSInteger)component reusingView:(UIView *)view {
       if ([self getCount] == 0)
           return nil;
    }