Pregunta

creo celda con autolayout.

    NSDictionary* subviewDictionary = NSDictionaryOfVariableBindings(_imageView,_labelName,_labelDate,_labelActivityText);

    NSString* stringConstraints = @"|-8-[_imageView(==50)]-17-[_labelName]-5-[_labelDate]-14-|";
    NSArray* arrayConstraints = [NSLayoutConstraint constraintsWithVisualFormat:stringConstraints
                                                                        options:NSLayoutFormatAlignAllBaseline
                                                                        metrics:nil
                                                                          views:subviewDictionary];
    [self addConstraints:arrayConstraints];

funciona, pero es necesario mostrar _labelate a tamaño completo, ancho _labelde varía de 30 a 60.

P.s.Lo siento mi mal inglés

¿Fue útil?

Solución

Suena como si necesitas aumentar la resistencia de la etiqueta de la fecha a la compresión.De forma predeterminada, una etiqueta tiene una prioridad de resistencia a la compresión de 750. Solo necesita aumentar esta prioridad por 1 para la etiqueta de fecha.Esto hará que el contenido de la etiqueta del nombre se comprima en su lugar.

[_labelDate setContentCompressionResistancePriority:751 forAxis:UILayoutConstraintAxisHorizontal];

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top