To hide the blinking caret, you need to override caretRectForPosition of a UITextField and return CGRectZero.
public override func caretRectForPosition(position: UITextPosition) -> CGRect { return CGRectZero }
override func caretRect(for position: UITextPosition) -> CGRect { return CGRect.zero }
- (CGRect) caretRectForPosition:(UITextPosition*) position{ return CGRectZero; }