Как сделать оба содержимого UITextFields одинаковыми в одно и то же время? - PullRequest
0 голосов
/ 13 марта 2012

У меня есть несколько полей UITextFields и одна кнопка. Может кто-нибудь сказать мне, как сделать так, чтобы оба текстовых поля (первое поле адреса улицы и поле адреса улицы под кнопкой «То же, что выше») были равны, если моя кнопка (такая же как выше) проверено (я использую логическую переменную isSameAsAboveChecked при нажатии кнопки и задаю значение Yes и No для соответствующих действий).

Означает, если кнопка «То же, что и выше» отмечена, и я что-то пишу в текстовом поле First Street Address, то в то же время содержимое текстового поля Second Street Address должно начать изменяться. и то же самое для всех других полей.

Спасибо заранее.

Ответы [ 3 ]

2 голосов
/ 13 марта 2012

Установите оба значения textfield.delegate =self

Я только что попробовал:

  - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
 {

    self.yourSecondField.text=self.yourFirstField.text;

     return YES;
 }

Проблема: Если первое поле было введено как, скажем, "XYZA", второе полепросто "XYZ", может быть, кто-то может отредактировать этот ответ или дать лучший.

1 голос
/ 13 марта 2012

Используйте этот метод делегата

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
    NSString * toBeString = [textField.text stringByReplacingCharactersInRange:range
                                                                withString:string];
    text2Field.text = toBeString;
    return YES;
}

В нем сначала установите введенный текст в другое textField, а затем верните ДА

Не забудьте вернуть да,

0 голосов
/ 13 марта 2012

для этой функции используйте этот код

-(BOOL)textFieldShouldReturn:(UITextField *)textField{
if (textField == street_Address) {
    if (check_box) {
        street_address.text=street_Address.text;
}
    else
        [street_Address resignFirstResponder ];}

Точно так же вы подаете заявку на остальные поля. Сначала проверьте, установлен ли флажок или нет. если включено, то передайте значение в текстовые поля ниже, в противном случае оставьте текущее текстовое поле в отставке.

...