У меня странное поведение NSRange на моем устройстве (iPhone iOS 4.3). Этот код имеет другое поведение на устройстве и симуляторе.
for (Location *location in locationArray)
{
NSRange range1 = [location.name rangeOfString:searchText options:NSCaseInsensitiveSearch];
NSRange range2 = [location.streetAddress rangeOfString:searchText options:NSCaseInsensitiveSearch];
NSRange range3 = [location.postalCode rangeOfString:searchText options:NSCaseInsensitiveSearch];
if (range.length1 > 0 | range2.length > 0 | range3.length > 0)
[self.filteredList addObject:location];
}
Если некоторые свойства имеют нулевое значение range.lenght для этого свойства равно 2 на устройстве и ноль в симуляторе.
Я что-то не так делаю?