Cómo configurar contenido insertado para UITextView en ios
ios7 uiedgeinsets (2)
Estoy teniendo una UITextView y establecí el contenido del contenido como
[atextView setContentInset:UIEdgeInsetsMake(0, 10, 0, 0)];
Este código funciona en iOS 6.1 y versiones posteriores, pero no ocurre nada en iOS 7.0.
Una forma alternativa y quizás un poco más conveniente de hacerlo, subclasificando el UITextField y agregando una propiedad de inserción @IBInspectable.
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)
}
}
tengo respuesta:
[atextView setTextContainerInset:UIEdgeInsetsMake(7, 7, 0, 0)];
arregló mi problema
Y en Swift ...
@IBOutlet var tv:UITextView!
override func awakeFromNib()
{
super.awakeFromNib()
tv.textContainerInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0);
}
ACTUALIZAR: otra opción para hacer eso.
UIView *spacerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, 10)];
[msgtext setLeftViewMode:UITextFieldViewModeAlways];
[msgtext setLeftView:spacerView];