To change edge insets in UITextField, create a new subclass and override these methods:
// placeholder position
- (CGRect)textRectForBounds:(CGRect)bounds {
return CGRectInset(bounds, 0, 10);
}
// text position
- (CGRect)editingRectForBounds:(CGRect)bounds {
return CGRectInset(bounds, 0, 10);
}
Here 0 is dx, 10 is dy.
Found this nice solution here