Ответ 1
Возможно, вы изменили цвет оттенка в своем пользовательском UITextView. Если цвет оттенка совпадает с цветом фона (обычно белый), он будет невидимым.
Может ли кто-нибудь подумать о причине, что мигающий курсор не появится в UITextView
? У меня есть настраиваемый элемент управления, который является всего лишь подклассом UIView
и имеет в нем UITextView
, но курсор не появляется, когда он получает фокус. Клавиатура появляется, и текст появляется по мере ввода, но курсора нет, и я не могу понять, почему.
Любые мысли?...
Возможно, вы изменили цвет оттенка в своем пользовательском UITextView. Если цвет оттенка совпадает с цветом фона (обычно белый), он будет невидимым.
Возможно, вы неправильно настроили contentSize
и/или фрейм для компонента, чтобы он был слишком мал, чтобы быть видимым или элемент управления вышел из экрана. Пожалуйста, перейдите в Simulator к Debug->Color Blended Layers
, чтобы убедиться, что эти значения установлены правильно.
EDIT:
С новыми Xcodes (возможно, представленными в Xcode 6) вы можете отлаживать такие проблемы, нажав "Debug View Hierarchy" (это один из значков на нижней панели)
Я изменил цвет оттенка всех моих UITextViews, и курсор начал показывать следующую строчку.
Текстовое поле показывает курсор, но вы не можете видеть цвет, просто потому, что цвет оттенка вашего текстового поля установлен по умолчанию, скорее всего, как в моем случае. Просто выберите textField в раскадровке и выберите цвет ссылки по вашему желанию. См. Прикрепленное изображение.
Простой обходной путь, похоже, работает путем введения задержки, а затем вызова firstResponder, например:
-(void)begin{
[self performSelector:@selector(first) withObject:nil afterDelay:0.01f];
}
-(void)first{
[tf becomeFirstResponder];
}