установите UITextField как не доступный для редактирования - Objective C

    [Number.editable = NO];
    [Number resignFirstResponder];
    [Password.editable = NO];
    [Password resignFirstResponder];

Я получаю ошибку

Запрос на участника, 'доступного для редактирования' в чем-то не структура или объединение

:S

Спасибо

12
задан user393273 18 July 2010 в 10:13
поделиться

2 ответа

Во-первых, [...] не нужны, если вы не отправляете сообщение.

Number.editable = NO;
[Number resignFirstResponder];
Password.editable = NO;
[Password resignFirstResponder];

Но это не причина ошибки. Свойство .editable определено только для UITextView, но не для UITextField. Вы должны установить свойство .enabled для UITextField (обратите внимание, что UITextField является UIControl).

Number.enabled = NO;
...
28
ответ дан 2 December 2019 в 03:06
поделиться

Кроме того, вы можете использовать методы делегата.

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
  return NO;
}

Это поможет. Я предпочитаю этот метод настройке textField.enabled = YES, когда есть вероятность, что возможность редактирования изменится в течение жизненного цикла приложения.

18
ответ дан 2 December 2019 в 03:06
поделиться