Estoy teniendo un UITextView y establecer el contenido del recuadro como

[atextView setContentInset:UIEdgeInsetsMake(0, 10, 0, 0)];

Este código trabajando en iOS 6.1 y por abajo, pero no pasa nada en iOS 7.0.

  • Es allí una manera de hacer esto GUIÓN ?!
  • ¿has probado respuesta actualizada?
  • Sí no es así , compruebe mi solución por debajo de Joe Blow
  • gracias por la actualización.

2 Comentarios

  1. 133

    obtuvo respuesta:

    [atextView  setTextContainerInset:UIEdgeInsetsMake(7, 7, 0, 0)];

    solucionado 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)
    }

    ACTUALIZACIÓN: otra opción para hacer eso.

    UIView *spacerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, 10)];
    [msgtext setLeftViewMode:UITextFieldViewModeAlways];
    [msgtext setLeftView:spacerView];
    • hey @murugha23 , necesito ayuda en cómo se resuelve textview setContentInset problema en IOS7
    • reemplazar setTextContainerInset en lugar de setContentInset. Si desea proporcionar a las versiones anteriores de ios, a continuación, comprobar una condición reg., dispositivo actual versión del sistema
    • sí querida he hecho eso pero no funcionó para mí
    • sería bueno si me puedes proporcionar un código de ejemplo de su clase,incluyendo el teclado y el textview diversos métodos ,así que yo puedo tener una idea clara
    • en realidad, ¿cuál es tu problema ? es la configuración de forma incorrecta o completamente no?
    • Completamente no funciona
    • puede publicar su código como pregunta y me envía el enlace?
    • Sí, yo soy la publicación de la pregunta y la publicación de vínculo pronto
    • Tenga en cuenta que sólo se debe utilizar uno o el otro. El uso de ambos juntos resultado indeseable de aditivo comportamiento.
    • antes de usar el código de arriba voy a comprobar el estado de la versión de ios
    • Funciona a la perfección para mí. Gracias @murugha23
    • Lo que he descubierto es que hay algo extraño (buggy) la interacción entre los setTextContainerInset UIEdgeInsets valores. Yo era capaz de obtener el comportamiento quería como se describe aquí: stackoverflow.com/questions/19422578 me gustaría recomendar (a ciegas) liarte con los 4 valores para intentar encontrar un comportamiento aceptable.

  2. 2

    Una alternativa y tal vez un poco de forma más cómoda de hacerlo, por subclases de la UITextField y agregar un @IBInspectable margen de la propiedad.

    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)
        }
    
    }
    • Esta es una buena respuesta para UITextField, pero la pregunta es acerca de UITextView

Dejar respuesta

Please enter your comment!
Please enter your name here