小编Bil*_*ter的帖子

键盘inputAccessoryView的"上一页"和"下一页"工具栏

我一直在尝试实现这个工具栏,当顶部textField是firstResponder时,只启用'Next'按钮,当底部textField是firstResponder时,只启用'Previous'按钮.

它有点工作,但是发生的事情是我需要每次点击"上一个"/"下一个"按钮两次以启用/禁用相反的按钮.

我是否在响应者链中遗漏了这样的事情?

这是我的代码:

- (void)viewDidLoad
{
    [super viewDidLoad];
    [self.topText becomeFirstResponder];
}


- (UIToolbar *)keyboardToolBar {

    UIToolbar *toolbar = [[UIToolbar alloc] init];
    [toolbar setBarStyle:UIBarStyleBlackTranslucent];
    [toolbar sizeToFit];

    UISegmentedControl *segControl = [[UISegmentedControl alloc] initWithItems:@[@"Previous", @"Next"]];
    [segControl setSegmentedControlStyle:UISegmentedControlStyleBar];
    segControl.momentary = YES;
    segControl.highlighted = YES;

    [segControl addTarget:self action:@selector(changeRow:) forControlEvents:(UIControlEventValueChanged)];
    [segControl setEnabled:NO forSegmentAtIndex:0];

    UIBarButtonItem *nextButton = [[UIBarButtonItem alloc] initWithCustomView:segControl];

    NSArray *itemsArray = @[nextButton];

    [toolbar setItems:itemsArray];

    return toolbar;
}

- (void)changeRow:(id)sender {

    int idx = [sender selectedSegmentIndex];

    if (idx == 1) {
        [sender setEnabled:NO forSegmentAtIndex:1];
        [sender …
Run Code Online (Sandbox Code Playgroud)

keyboard accessory uisegmentedcontrol uitextfield ios

19
推荐指数
4
解决办法
2万
查看次数