UITEXTFIELD FRUEVEWMODE Нечетное поведение

Я добавляю пользовательскую кнопку CLEAR (UIBUTTON) в UIEXTField, в качестве правого просмотра, однако я обнаружил, что есть странное поведение на ViewMode. Похоже, это не отображается как нормальная кнопка Clear, несмотря на установку режима просмотра. Пример код ниже:

UITextField *f = [[[UITextField alloc] init] autorelease];
f.frame = CGRectMake(0, 0, 300, 44);
f.backgroundColor = [UIColor clearColor];
f.textColor = [UIColor whiteColor];

f.clearButtonMode = UITextFieldViewModeNever;

UIImage *image = [UIImage imageNamed:@"Image.png"];

UIButton *b = [UIButton buttonWithType:UIButtonTypeCustom];
b.frame = CGRectMake(0, 0, image.size.width, image.size.height);
[b setImage:image forState:UIControlStateNormal];

f.rightView = b;
f.rightViewMode = UITextFieldViewModeWhileEditing;

Кнопка отображает правильно в следующих состояниях:

  • показывает во время фокусировки, а текст
  • не показывает во время фокусировки и ввода
  • , если нет фокуса

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

Я не нашел кого-то еще с этой проблемой, поэтому царапая голову на этом некоторое время. Любой легкий провал очень ценится.

11
задан jrturton 1 October 2011 в 18:17
поделиться