Я подклассифицировал UIPickerView, чтобы добавить немного больше функциональности (я на 99% уверен, что это не имеет никакого отношения к этому вопросу). В drawRect Я добавил панель инструментов, чтобы немного убрать панель инструментов, проблема в том, что ни UIToolbar, ни UIBarButtonItem внутри панели инструментов не получают касаний. Это почти так, как если бы представление было «невидимым» в том, что штрихи пересылаются к представлению позади него (UITableView). Я знаю, что могу просто создать «контрольный» вид, который содержит как сборщик, так и панель инструментов. Но я просто хотел знать, есть ли способ сделать это, не создавая другого представления?UIToolbar выше пользовательского UIPickerView не получает штрихи
Вот мой 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];
}
}
Вот фото:
Теперь, когда я думаю об этом, вы абсолютно обряд, это действительно действительно глупо ха-ха. Но входной аксессуар выглядит только для чтения, поэтому я предполагаю, что просто переопределяю свойство. Я попробую это, спасибо! – pob21
Это на самом деле не дало мне результата, который я искал, но большое спасибо за вашу помощь! – pob21
Вид аксессуара для входа не доступен только для чтения. Возможно, я не был чист. У вас есть текстовое поле, в котором вы используете сборщик для редактирования содержимого. Это текстовое поле имеет два свойства - входное представление (ваше стандартное представление UIPickerView) и входной вид аксессуара (панель инструментов). Установите их, и система объединяет их для вас. Почему вы подклассифицируете сборщик? – jrturton