Я разделил на подклассы UIPickerView , чтобы добавить немного больше функциональности (я на 99% уверен, что это не имеет никакого отношения к этому вопросу).В drawRect я добавил панель инструментов, чтобы немного упростить удаление панели инструментов, проблема в том, что ни UIToolbar, ни UIBarButtonItem внутри панели инструментов не получают прикосновения.Это почти как если бы представление было «невидимым» в том смысле, что касания перенаправляются в представление позади него (UITableView).Я знаю, что мог бы просто сделать «контрольное» представление, которое удерживает как инструмент выбора, так и панель инструментов.Но я просто хотел узнать, есть ли способ сделать это без создания другого представления?
Вот мой код drawRect:
- (void)drawRect:(CGRect)rect
{
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
pickerToolbar = [[UIToolbar alloc] initWithFrame: CGRectMake(0, 0, self.frame.size.width, 40)];
UIBarButtonItem *closeButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem: UIBarButtonSystemItemDone target: self.delegate action: closeAction];
[pickerToolbar setItems: [NSArray arrayWithObject: closeButton]];
[self addSubview: pickerToolbar];
}
}
Вот фотография: