Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
Методы класса в этом случае - это не очень хорошо. Да и вместо того чтобы реализовывать нормальную модель поиска, прятать по высоте ячейки - тоже не фонтан. А вообще можно переписать даже такое согласно требованиям (и читающие код не-iOS разработчики не скажут - что это за говно) (код поехал, http://pastebin.com/WctU6PMe):
Изыди, призванный демон, в адЪ!..
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)path {
if ([self searchText].length) {
NSString *result = [self resultStringForIndexPath:path];
if ([result containsString:[self searchText]]) {
return 0.f;
}
}
return 44.f;
}
- (NSString *)resultStringForIndexPath:(NSIndexPath *)path {
NSString *demonString = [self demonStringForIndexPath:path];
NSInteger idx = [LanguageList indexOfItem:demonString];
return [LanguageList enumToString:idx];
}
- (NSString *)demonStringForIndexPath:(NSIndexPath *)path {
LanguageSelectDemon *demon = [LanguageSelectDemon summon];
NSString *source = [demon getObjectAtIndex:path.row];
NSString *name = source.lastPathComponent.stringByDeletin gPathExtension;
return name.lowercaseString;
}
- (NSString *)searchText {
NSString *text = _searchBarWhite.text;
return text.length ? text : _searchBarBlue.text;
}
LanguageSelectDemon - singletonClass
вот и "Методы класса"
А вот с "LanguageSelectDemon *demon = [LanguageSelectDemon summon];"
почти угадал))
+(LanguageSelectDemon *)summon{
if (!demon) {
demon = [[LanguageSelectDemon alloc] init];
[demon PrepareLanguagesData];
[demon laodCurrentLanguageData];
}
return demon;
}
(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)path {
if ([self searchText].length) {
NSString *result = [self resultStringForIndexPath:path];
if ([result containsString:[self searchText]]) {
return 0.f;
}
}
return 44.f;
}
- (NSString *)resultStringForIndexPath:(NSIndexPath *)path {
NSString *demonString = [self demonStringForIndexPath:path];
NSInteger idx = [LanguageList indexOfItem:demonString];
return [LanguageList enumToString:idx];
}
- (NSString *)demonStringForIndexPath:(NSIndexPath *)path {
LanguageSelectDemon *demon = [LanguageSelectDemon summon];
NSString *source = [demon getObjectAtIndex:path.row];
NSString *name = source.lastPathComponent.stringByDeletin gPathExtension;
return name.lowercaseString;
}
- (NSString *)searchText {
NSString *text = _searchBarWhite.text;
return text.length ? text : _searchBarBlue.text;
}
Мерещится мне въ этихъ древних строкахъ ложь первосвященников, Христа поправшихъ.
Въебал минус.Освятил пост