Установите альфа-прозрачность на accessoryView - PullRequest
1 голос
/ 09 декабря 2011

Я пытаюсь добавить UIView в качестве accessoryView к UITextField, но свойство alpha, похоже, не соблюдается.

Вот мой текущий код.

self.keyboardAccView = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, 480.0)];
[self.keyboardAccView setBackgroundColor:[UIColor lightGrayColor]];
[self.keyboardAccView setOpaque:NO];
[self.keyboardAccView setAlpha:0.0];

UITapGestureRecognizer *hideKeyboardTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyboard:)];
[self.keyboardAccView addGestureRecognizer:hideKeyboardTap];
[hideKeyboardTap release], hideKeyboardTap=nil;

Значение альфа не имеет значения.Независимо от того, что я установил, для accessoryView всегда не задана прозрачность.

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

  • РЕДАКТИРОВАТЬ *

Я знаю, я мог бы простоиспользуйте [UIColor clearColor] в качестве backgroundColor, но я больше хочу знать, почему настройка альфа не соблюдается, если я действительно хотел иметь полупрозрачный accessoryView

1 Ответ

0 голосов
/ 10 декабря 2011

да - есть лучший способ сделать это! :)
Лично я делаю это следующим образом - я изменяю свой класс ViewController.xib (UIView на UIControl), а затем создаю простой IBAction, который подает в отставку первый респондент всякий раз, когда подключается UIControl.

Метод должен выглядеть следующим образом:

- (IBAction)hideKeyboard {
[textField resignFirstResponder];
}

Вот и все:)

...