I'm having a UITextView and set content inset as
[atextView setContentInset:UIEdgeInsetsMake(0, 10, 0, 0)];
This code working in iOS 6.1 and below, but nothing happens in iOS 7.0.
I'm having a UITextView and set content inset as
[atextView setContentInset:UIEdgeInsetsMake(0, 10, 0, 0)];
This code working in iOS 6.1 and below, but nothing happens in iOS 7.0.
got answer:
[atextView setTextContainerInset:UIEdgeInsetsMake(7, 7, 0, 0)]; fixed my problem.
And in Swift...
@IBOutlet var tv:UITextView! override func awakeFromNib() { super.awakeFromNib() tv.textContainerInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0) } UPDATE: another option to do that.
UIView *spacerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, 10)]; [msgtext setLeftViewMode:UITextFieldViewModeAlways]; [msgtext setLeftView:spacerView]; setTextContainerInset instead of setContentInset. If you want to provide previous versions of ios, then check a condition reg., current device system versionAn alternative and maybe a little more convenient way to do it, by subclassing the UITextField and add an @IBInspectable inset property.
import UIKit class UITextfieldWithInset: UITextField { @IBInspectable var textfieldInset: CGPoint = CGPointMake(0, 0) override func textRectForBounds(bounds: CGRect) -> CGRect { return CGRectInset(bounds, textfieldInset.x, textfieldInset.y) } override func editingRectForBounds(bounds: CGRect) -> CGRect { return CGRectInset(bounds, textfieldInset.x, textfieldInset.y) } override func placeholderRectForBounds(bounds: CGRect) -> CGRect { return CGRectInset(bounds, textfieldInset.x, textfieldInset.y) } } UITextField, but the question is about UITextView