Изображение в UITextField rightView не отображается - PullRequest
17 голосов
/ 24 марта 2011

У меня есть этот код, чтобы добавить файл 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

1 Ответ

21 голосов
/ 24 марта 2011

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

[[UIButton alloc] initWithFrame:CGRectMake(0, 0, width, height)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...