UITextField rightViewMode comportamento estranho
Estou adicionando um botão Limpar personalizado (UIButton) a um UITextField como o rightView, no entanto, descobri que há algum comportamento estranho no viewMode. Não parece ser exibido como o botão limpar normal, apesar do modo de visualização estar definido. Exemplo de código abaixo:
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;
O botão é exibido corretamente nos seguintes estados:
Mostra enquanto está focado e sem texto Mostra enquanto está focado e digitandoOculta quando não há focoNo entanto, se o campo de texto já tiver conteúdo e você mudar o foco para ele, o botão Limpar não será exibido. Para que seja exibido novamente, você deve excluir todo o texto e alternar o foc
Não encontrei mais ninguém com esse problema, por isso estou coçando minha cabeça por um tempo. Qualquer luz derramada muito apreciada.