2012-11-16 7 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

왜 Label 대신 placeHolder를 사용합니까? 그런 다음 레이블을 화면의 다른 곳에두고 알파 = 0.0; textfield.text = label.text와 같은 텍스트 필드에 텍스트를 표시하면됩니다 (위의 메서드에서는 예상되는 문자열을 반환 할 수 있습니다). –