Pregunta

Veo que hay un nombre de atributo (NSParagraphStyleAttributeName) para aplicar estilos de párrafo al texto en Cocoa. El texto se almacena en un NSAttributedString, pero lo que define a un "párrafo" en esa cadena - que es el carácter de nueva línea \n? ¿Otros personajes? Si se trata de un \n, entonces ¿cómo se crea una nueva línea sin comenzar un nuevo párrafo. Y por último, cuando se conecta un ParagraphStyle a la cadena, usted tiene que utilizar el rango exacto de todo el párrafo, o se puede poner en cualquier sub-rango en el párrafo. Si puede ser un sub-rango, ¿Cómo maneja el sistema de dos o más ParagraphStyles en el mismo párrafo?

gracias, Rob

¿Fue útil?

Solución

Tengo una respuesta de Douglas en la lista de correo de cacao-dev de Apple:

http://lists.apple.com/archives/Cocoa-dev/2010 /Dec/msg00347.html

voy a copiar lo que escribió aquí:

Cualquiera de los separadores de párrafos estándar se puede utilizar (\ n, \ r, \ r \ n, Unicode separador de párrafo). Utilice el carácter separador de línea Unicode para iniciar una nueva línea sin un salto de párrafo. Lo mejor es aplicar un estilo de párrafo a un párrafo entero; Si eso no se hace, entonces el atributo de estilo de párrafo se fijará automáticamente en el momento de fijación atributo para que sea constante en cada rango párrafo, debido a que se necesita en el momento de la disposición.

Otros consejos

la mejor manera en IOS de mi experiencia es de uso

@"\n\r";

i encontré comportamiento inconsistente con sólo usando \n o 0x2029 incluso (que debe ser el equivalente de NSParagraphSeparatorCharacter (no definida en IOS))

los problemas surgieron cuando se utiliza NSAttributedString y NSParagraphStyle ... como cuando se usa el @ "\ n" o (0x2029) del setParagraphSpacing fue ignorada por que no sea el primer párrafo ... usando @"\n\r" conseguido los paragraphes derecho

Podría valer la pena mencionar que Cadena de Apple Guía de programación tiene una sección sobre el párrafo y saltos de línea, y que NSString le dará los rangos de párrafo sin tener que buscar separadores de párrafos.

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