Esta solución es válida para iOS:
en IOS puede utilizar UILabel y derecha alinearlos. Por supuesto, tendrá una alineación perfecta solo si utiliza una "fuente fija", como Courier New, por ejemplo. Si debe usar una fuente proporcional, la única forma es usar la extensión NSString + UIKit para dibujar todos los caracteres de la cadena en posiciones fijas dentro del contexto de dibujo de la vista: Así que idealmente el flujo es: 1. calcule la longitud de la cadena más larga 2. Dé la vuelta al resto de las cadenas agregando espacio extra 3. Luego, para cada cadena, repita cada carácter y grábelo como una posición específica (no copie y pegue este código, solo úselo para tener una idea; esto es obj-c-como pseudo-código)
CGFloat x=0; // the string start let's say at x=0
CGFloat dx=40; // distance between characters
for(NSInteger i=0;i<[myString length];i++) {
NSString *char = [myString substringWithRange:NSRangeMake(i,1)];
[char drawAtPoint:CGPointMake(x,y) withFont:myFont];
x+=dx;
}
de dx curso debe ser elegido de acuerdo con el tamaño de fuente.
No he probado cadenas de relleno utilizando la clase NSString, pero en teoría debería ser capaz de hacer algo así ... * NSString otra = [NSString stringWithFormat: @ "% 8S", [str UTF8String]], donde * str * es la cadena de fecha sin formato en formato HH: MM: SS. – Perception
Según el ejemplo, podría ser suficiente dibujar la cadena alineada a la derecha. Esto se puede configurar con estilo de párrafo. – Gobra
@Perception: si publica eso como una respuesta (con S cambiado a s), lo votaré de vuelta. Es la solución correcta para un ancho de caracteres fijo. –