Я исследовал это, но нашел только, как переключить клавиатуру для клавиатуры. Прямо сейчас у меня есть UIPicker и появляется, когда текстовое поле прослушивается. В Picker их три варианта, а третий - обычай. То, что я хочу сделать, - это когда пользовательский выбран, UIPicker заменяется клавиатурой. Я предполагаю, что это будет сделано с помощью метода if (select == 2) { }
. Мне не нужна целая куча кода, просто метод замены Picker. Также я хотел бы сделать toolBar с обратной кнопкой, чтобы вернуться к сборщику. В настоящее время у меня есть панель инструментов с doneButton, чтобы выпустить сборщик, но мне нужно будет сделать кнопку, когда появится клавиатура, и кнопка сможет переключить клавиатуру обратно на мой Picker.Переключение UIPicker для keybaord
До сих пор мой пипетка, toolabr и TextField являются:
...
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
NSArray *array = [[NSArray alloc] initWithObjects:@"...",@"...",@"Custom", nil];
self.PickerData = array;
...
UIToolbar *toolBar = [[UIToolbar alloc] init];
toolBar.barStyle = UIBarStyleBlackOpaque;
[toolBar sizeToFit];
...
UIBarButtonItem *flexSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace
target:self
action:nil];
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(releasePicker)];
Picker = [[UIPickerView alloc] init];
Picker.showsSelectionIndicator = YES;
Picker.delegate = self;
doneButton.image = [UIImage imageNamed:@"button.png"];
[toolBar setItems:@[flexSpace, doneButton] animated:YES];
self.habitField.inputAccessoryView = toolBar;
[self.habitField setEnabled: YES];
[self.habitField setInputView:Picker];
}
- (void)releasePicker {
[self.habitField resignFirstResponder];
}
...
-(NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
return 1;
}
-(NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
return [PickerData count];
}
-(NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
return [self.PickerData objectAtIndex:row];
}
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
int select = row;
if (select == 0) {
...
}
if (select == 1) {
...
}
if (select == 2) {
...
}
}
@end
как я могу сделать кнопку принести сборщика обратно? –
@ user2660874 См. Код в моем редактировании –