ios uilabel swift

uikit ios



¿Cómo cambio el tamaño de fuente de una UILabel en Swift? (17)

label.font.pointSize es de solo lectura, así que no estoy seguro de cómo cambiarlo.


Apple sigue cambiando las cosas sin ninguna razón: Swift 4+:

myLabel.font = UIFont.systemFont(ofSize: 16)

Gracias Apple por perder el tiempo de las personas para averiguar qué métodos de "tamaño de fuente" necesitan usar.


Creo que la mejor manera de hacerlo es si mantener la misma fuente que ya está asignada a UILabel sería:

(usando Swift)

label.font = label.font.fontWithSize(20)

(usando Swift 3)

label.font = label.font.withSize(20)

Lo ideal sería establecer esto en el método viewDidLayoutSubviews , ya que no es necesario cambiar cada vez que aparece la vista.


En Swift 3 de nuevo ...

myLabel.font = myLabel.font.withSize(18)


En Swift 3:

label = UIFont.systemFont(ofSize: 20)

y para usar los tamaños preestablecidos del sistema, por ejemplo:

label = UIFont.systemFont(ofSize: UIFont.smallSystemFontSize)


En swift3, suponga que su nombre de UILable es myLable y desea cambiar su tamaño de fuente haga esto

myLable.font = UIFont.systemFont(ofSize: 10)


Es muy fácil y conveniente cambiar el tamaño de fuente desde el guión gráfico, y puedes ver instantáneamente el resultado del cambio.

En realidad, también es muy fácil cambiar otros atributos de fuente en el guión gráfico, como el estilo, la familia de fuentes, etc.


Podemos establecer la fuente según nuestro requisito como,

label.font = UIFont(name: "Avenir-Light", size: 15.0) label.font = UIFont.boldSystemFontOfSize(15) label.font = UIFont.italicSystemFontOfSize(15) label.font = UIFont.systemFontOfSize(17)


Puedes dar así también

labelName.font = UIFont(name: "systemFont", size: 30)


Puedes hacerlo así:

label.font = UIFont(name: label.font.fontName, size: 20)

O así:

label.font = label.font.fontWithSize(20)

Esto usará la misma fuente. 20 puede ser del tamaño que quieras, por supuesto.

Nota: La última opción sobrescribirá el peso de fuente actual a regular por lo que si desea conservar el peso de fuente, use la primera opción.

Actualización de Swift 3 :

label.font = label.font.withSize(20)

Actualización de Swift 4 :

label.font = label.font.withSize(20)

o

label.font = UIFont(name:"fontname", size: 20.0)

y si usas las fuentes del sistema

label.font = UIFont.systemFont(ofSize: 20.0) label.font = UIFont.boldSystemFont(ofSize: 20.0) label.font = UIFont.italicSystemFont(ofSize: 20.0)


Puedes usar una extensión.

import UIKit extension UILabel { func sizeFont(_ size: CGFloat) { self.font = self.font.withSize(size) } }

Para usarlo:

self.myLabel.fontSize(100)


Si solo quieres cambiar el tamaño de tu fuente, creo esta extensión.

// Add extension extension UILabel { func setSizeFont (sizeFont: Double) { self.font = UIFont(name: self.font.fontName, size: sizeFont)! self.sizeToFit() } } // Use myLabel.setSizeFont(60)


Swift 3.1

import UIKit extension UILabel { var fontSize: CGFloat { get { return self.font.pointSize } set { self.font = UIFont(name: self.font.fontName, size: newValue)! self.sizeToFit() } } }


Utilicé fontWithSize para una etiqueta con fuente de sistema light, pero vuelve a cambiar a la fuente normal del sistema.

Si desea mantener los rasgos de la fuente, mejor incluir los descriptores.

label.font = UIFont(descriptor: label.font.fontDescriptor(), size: 16.0)


SWIFT 3.1

Label.font = Label.font.withSize (NewValue)


Swift 3

label.font.withSize(16)


Swift-3.1

label.font = UIFont.systemFont (ofSize: 12)


label.font = UIFont.systemFontOfSize(20)