He buscado en este sitio, pero me acabo de enterar de preguntas sin respuesta.
Me he cargado una fuente personalizada en mi proyecto de xcode. Un [UIFont fontWithName:@"Laconic-Light" size:19]
obras. Pero interface builder no le gusta el tipo de letra. No los puedo usar con IB que siempre muestra la fuente predeterminada. Hay una manera de decirle a IB que su autorización para utilizar la fuente?
- stackoverflow.com/questions/3419346/…
- Tan sólo roto… 😛
- miedo así 🙁 tal vez puede reemplazar IB y el cambio a través de programación?
- Eso es lo que yo hago. Lo justo hubiera sido bueno para mi situación. Estoy de carga en diferentes xibs para el mismo punto de vista. Así que tengo que ir: Es xib 1? Cambiar todas las etiquetas y el botón de títulos a Lacónica. Es xib 2? Cambiar todas las etiquetas… 😛
- no un duplicado..
- Usted puede encontrar un muy útil tutorial aquí abdus.me/ios-programación-consejos/…
- Esto no es un duplicado. Esta pregunta es acerca de cómo utilizar una fuente personalizada en el Interface Builder. Los posibles duplicados es sobre el uso de un sistema de fuentes en el Interface Builder.
- En la Configuración de la fuente de UILabel con Interface Builder sale Helvetica resulta que era un error en una particular versión de la Interface Builder. Esta resolución no se aplica a esta pregunta.
También tengo este problema en Xcode 4. En mi programa, hay un montón de
UILabel
que no tienenIBOutlets
así que lo hago de esa manera;Primero, de la subclase de los
UILabel
aCustomFontLabel
A continuación, reemplazar el «
awakeFromNib
» métodoFinalmente, en el Interface Builder > Identidad del Inspector de cambio de clase para
CustomFontLabel
.Otra solución sería subclase UILabel a la carga en la fuente personalizada. Usted puede, a continuación, hacer referencia a ella en IB, aunque todavía no se puede ver la fuente adecuada.
Prefiero hacer esto en un poco más de forma genérica, que permite el tamaño de su texto en el Interface Builder, y simplemente reemplazar las fuentes en tiempo de ejecución.
Puedo crear una IBCollection de la propiedad por cualquier UIKit elementos para configurar una fuente para, a continuación, conectar los elementos apropiados de IB.
A continuación, en mi opinión, hizo cargar puedo usar un método como este:
Y la
setLightFontOnItemsInArray:
método se parece a esto:[self.lightFontItems setValue:[UIFont fontWithName:@"Roboto-Light" size:12] forKey:@"font"]
.Puede instalar este script http://pitaya.ch/moarfonts/.
Funciona realmente bien para mí con xcode 5.1.1.
Gracias a apple, en Xcode 6, tenemos fuentes personalizadas disponibles en la interfaz del generador de sí mismo.
Swizzle una Fuente
La solución general es sencillo si swizzle la UIFont clase. Creo que lo mejor es elegir una sana fuente como la Helvetica Neue y anulación. Esto permite que usted para poner a todo el proyecto de nuevo en el estándar tirando de la asignación. Yo ya había llegado con un swizzle para lograr este objetivo cuando me di cuenta de alguien hizo demasiado así que me puré un poco. Como NSHipster le dirá swizzling puede ser peligroso, pero en este caso, el riesgo es bastante bajo teniendo en cuenta la absoluta simplicidad de la UIFont de la API. En mi caso fue hecho por una Empresa de la aplicación de lo que era aún menor riesgo.
UIFont+CustomFont.m Categoría
La FontMap.plist
Por el bien de la simplicidad vamos a suponer que tenemos una fuente llamada CustomSans.