I've followed the instructions here and succesfully set up a UITextField that gets updated with a UIDatePicker. However the cursor in the UITextField is blinking, which seems quite a bit awkward to me.
Is there any solution to get rid of that cursor?
I realise this is an old question, but with the updates to iOS 7, it is now possible to hide the cursor by doing the following:
[[self textFieldName] setTintColor:[UIColor clearColor]];
It will only work on iOS 7+ however.
Subclass UITextfield and Override the - (CGRect)caretRectForPosition:(UITextPosition *)position
method and return CGRectZero
.
- (CGRect)caretRectForPosition:(UITextPosition *)position {
return CGRectZero;
}
I hope it will helpful to you.
Set Cursor UIColor -> Empty.
[[self.textField valueForKey:@"textInputTraits"] setValue:[UIColor clearColor] forKey:@"insertionPointColor"];
In Swift : 2.3
self.textField.valueForKey("textInputTraits")?.setValue(UIColor.clearColor() , forKey:"insertionPointColor")
I couldn't get jcm's solution to work. What I ended up doing was to subclass UILabel to mimic a UITextField's interactive functionality without the parts that I didn't want (like the cursor). I wrote a blog post about it here:
http://pietrorea.com/2012/07/how-to-hide-the-cursor-in-a-uitextfield/
Basically, the UILabel subclass needs to overwrite isUserInteractionEnabled, inputView, inputViewAccessory and canBecomeFirstResponder. It's only a few lines of code and it makes more sense.
Totally silly hack, but if you set the text field's tint color in the UIView
section of the Interface Builder property inspector to match the background color, the cursor will appear invisible:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With