Установка двух элементов управления на одном UIView - PullRequest
1 голос
/ 25 августа 2009

У меня есть средства управления сборщиком в одном представлении с двумя выходами для каждого. Когда любой из них выбран, вызывается тот же метод. Как я должен различать, какой орган управления выбора вызвал делегата?

Как изменить размер рамки сборщиков, чтобы они соответствовали одному виду?

Спасибо

Amit

Ответы [ 4 ]

0 голосов
/ 30 марта 2010

Вместо двух сборщиков, вы можете сделать это как один. Вы можете иметь контроллер выбора в представлении. После того, как пользователь коснется кнопки, поднимите вид вверх и сделайте так, чтобы он выбирал из окна выбора и удалил вид. Это уменьшит пространство в главном контроллере вида.

0 голосов
/ 15 сентября 2009

Установите представление в UILable и установите размер шрифта или настраиваетFontSizeToFitWidth:

UILabel *myView;
myView = [[[UILabel alloc] initWithFrame:myFrameRect] autorelease];
myView.adjustsFontSizeToFitWidth = YES;
return myView;
0 голосов
/ 23 октября 2009

Я добился большого успеха, поместив два средства выбора прямо друг на друга, а затем с помощью UISegmentedControl для выбора видимого, установив свойства .hidden каждого.

0 голосов
/ 25 августа 2009

Два сборщика в представлении звучит безумно безобразно. Неужели у вас не получится иметь сборщик с двумя компонентами (то есть столбцами)?

Тем не менее, первый параметр в каждом методе, определенном UIPickerViewDelegate, - это средство выбора, которое вызвало вас. Если вы подключили IBOutlet к каждому UIPickerView, то вы сможете сравнить этот параметр с этими выходами, чтобы выяснить, какой из них вас вызвал. Примерно так:

IBOutlet UIPickerView *fooPicker;
IBOutlet UIPickerView *barPicker;

// ...

- (NSString *)pickerView:(UIPickerView *)pickerView
    titleForRow:(NSInteger)row forComponent:(NSInteger)component {
    if (pickerView == fooPicker)
         return [NSString stringWithFormat @"Foo row %d", row];
    else 
         return [NSString stringWithFormat @"Bar row %d", row];
}

Возможно, было бы удобнее подключаться к различным объектам, как ваши делегаты, но с двумя средствами выбора в одном представлении, "очистить", вероятно, в любом случае вам не подходит.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...