Подтвердить что ты не робот

Изображение в UITextField rightView не появляется

У меня есть этот код, чтобы добавить файл 26 x 30.png в правый вид UITextField.

//add button to address bar
//UIButton *refreshButton = [UIButton buttonWithType:UIButtonTypeInfoDark];
UIButton *refreshButton = [UIButton buttonWithType:UIButtonTypeCustom];
[refreshButton setImage:[UIImage imageNamed:@"refresh.png"] forState:UIControlStateNormal];
[refreshButton setImage:[UIImage imageNamed:@"refresh.png"] forState:UIControlStateHighlighted];
refreshButton.imageEdgeInsets = UIEdgeInsetsMake(0, -16, 0, 0);
[refreshButton addTarget:self action:@selector(refresh) forControlEvents:UIControlEventTouchUpInside];
addressBar.rightView = refreshButton;
addressBar.rightViewMode = UITextFieldViewModeUnlessEditing;

кнопка осязаема и вызывает метод, которым она должна быть, но изображение не отображается.

любые идеи? может быть, изображение слишком велико для текстового поля? Мое текстовое поле - это стандартный размер, который я втянул из IB, поэтому я не думаю, что это, но это идея.

текстовое поле 245 x 31

4b9b3361

Ответ 1

Вы пытались указать кадр при инициализации своего UIButton вместо использования метода метода buttonWithType. Я предполагаю, что текстовое поле не может определить размер вашей кнопки без него.

[[UIButton alloc] initWithFrame:CGRectMake(0, 0, width, height)]