Привет!
Хабр читаю давно, но вот никак руки не доходили написать здесь что-то свое. И вот я решился и подобрал, на мой взгляд, подходящий материал.
Моя основная работа связанна с разработкой на PHP. Недавно я решил изучить Objective C. Начал делать простые проекты. И вот вдруг мне понадобился обычный select, который так легко получить в веб-разработке. Тут же задача оказалась чуть сложнее. Думаю, существует много готовых решений, но все мы любим свои велосипеды (там, где это уместно) и основная задача тут — обучение и получение опыта.
В основе лежит UITableView. В качестве источника данных используется массив.
Пример использования:
Обработака результата выбора осуществляется следующим методом, который описан в протоколе SelectBoxViewDelegate.
Ссылка на код.
Всем спасибо!
Хабр читаю давно, но вот никак руки не доходили написать здесь что-то свое. И вот я решился и подобрал, на мой взгляд, подходящий материал.
Моя основная работа связанна с разработкой на PHP. Недавно я решил изучить Objective C. Начал делать простые проекты. И вот вдруг мне понадобился обычный select, который так легко получить в веб-разработке. Тут же задача оказалась чуть сложнее. Думаю, существует много готовых решений, но все мы любим свои велосипеды (там, где это уместно) и основная задача тут — обучение и получение опыта.
В основе лежит UITableView. В качестве источника данных используется массив.
Пример использования:
//Источник данных
NSMutableArray *arrayData = [[NSMutableArray alloc] init];
//Новая секция
NSMutableArray *sectionArray = [[NSMutableArray alloc] init];
//Элементы
NSArray *titles = @[@"title 1", @"title 2", @"title 3"];
//Значения
NSArray *values = @[@"value 1", @"value 2", @"value 3"];
[sectionArray addObject:@"Select Box Header"]; //заголовок секции
[sectionArray addObject:titles];
[sectionArray addObject:values];
[arrayData addObject:sectionArray];
self.selectBox = [[SelectBoxView alloc] initWithFrame:CGRectMake(0,10, self.view.frame.size.width,30) andData:arrayData andSection:0 andRow:0 andImage:@"ico.png"];
self.selectBox.parentNavigationController = self.navigationController;
self.selectBox.delegate = self;
[self.selectBox setSelectBoxTag:0];
//self.selectBox.isCheck = NO; //отображать галочки или нет
[self.view addSubview:self.selectBox];
Обработака результата выбора осуществляется следующим методом, который описан в протоколе SelectBoxViewDelegate.
- (void) setSelectRow: (UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
//тут делаем что - то используя значения row и section из indexPath
}
Ссылка на код.
Всем спасибо!