2012-11-16 2 views
0

Я хочу иметь надпись над текстовым полем, которое изменяется во время ввода пользователем. Проблема заключается в том, что каретка текстового поля находится за меткой (если я помещаю ярлык перед текстовым полем). Я всегда могу сделать фоновый текст поля прозрачным и добавить еще одно отключенное текстовое поле как для ярлыка, так и для текстового поля, но я бы хотел получить лучшее решение.iOS uilabel over uitextfield

+0

На самом деле, каково ваше требование, и можете ли вы объяснить, почему вы хотите использовать ярлык над текстовым полем? –

+0

У меня есть поле кредитной карты и надпись, содержащая XXXX-XXXX-XXXX-XXXX, которая заполняет текстовое поле. После того, как пользователь вводит цифру, она становится 0XXX-XXXX-XXXX-XXXX и так далее. – Yaniv

+0

Итак, если вы создадите текстовое поле и позади него ярлык с X-s .. Зачем вам нужно другое текстовое поле за обоими элементами? И зачем тебе вообще нужна каретка? Я бы сказал, что отображать только ярлык и клавиатуру для этого вопроса. –

ответ

1

Вы можете добавить Lable за текстовое поле и сделать поле текстового поля прозрачным и без полей. и удалить местозаполнитель. вы можете использовать метод ниже для достижения этого.

- (BOOL) textField: (UITextField *)theTextField shouldChangeCharactersInRange: (NSRange)range replacementString: (NSString *)string 
{ 

} 
+0

Как я уже сказал, я подумал об этом. – Yaniv

+0

Почему вы не используете placeHolder вместо Label? затем поместите ярлык в другое место на экране и сделайте его альфа = 0.0; то просто покажите текст в текстовом поле, например: textfield.text = label.text (в приведенном выше методе вы можете вернуть ожидаемую строку). –

Смежные вопросы