iOS: establece el tamaño de fuente de UILabel mediante programación
(8)
Swift 3.0
labelName.font = labelName.font.withSize(15)
Estoy tratando de establecer el tamaño de fuente de un UILabel. Sin importar el valor que pongo, el tamaño del texto no parece cambiar. Aquí está el código que estoy usando.
[self setTitleLabel:[[UILabel alloc] initWithFrame:CGRectMake(320.0,0.0,428.0,50.0)]];
[[self contentView] addSubview:[self titleLabel]];
UIColor *titlebg = [UIColor clearColor];
[[self titleLabel] setBackgroundColor:titlebg];
[[self titleLabel] setTextColor:[UIColor blackColor]];
[[self titleLabel] setFont:[UIFont fontWithName:@"System" size:36]];
C objetivo:
[label setFont: [label.font fontWithSize: sizeYouWant]];
Rápido:
label.font = label.font.fontWithSize(sizeYouWant)
simplemente cambia el tamaño de fuente de un UILabel.
En Swift 3.0, puede usar este código a continuación:
let textLabel = UILabel(frame: CGRect(x:containerView.frame.width/2 - 35, y:
containerView.frame.height/2 + 10, width: 70, height: 20))
textLabel.text = "Add Text"
textLabel.font = UIFont(name: "Helvetica", size: 15.0) // set fontName and Size
textLabel.textAlignment = .center
containerView.addSubview(textLabel) // containerView is a UIView
Es PORQUE no hay una familia de fuentes con el nombre @"System"
tanto, el size:36
tampoco funcionará ...
Compruebe las fuentes disponibles en xcode en el inspector de atributos y pruebe
Este código funciona perfectamente para mí.
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(15,23, 350,22)];
[label setFont:[UIFont systemFontOfSize:11]];
Para iOS 8
static NSString *_myCustomFontName;
+ (NSString *)myCustomFontName:(NSString*)fontName
{
if ( !_myCustomFontName )
{
NSArray *arr = [UIFont fontNamesForFamilyName:fontName];
// I know I only have one font in this family
if ( [arr count] > 0 )
_myCustomFontName = arr[0];
}
return _myCustomFontName;
}
Pruebe [UIFont systemFontOfSize:36]
o [UIFont fontWithName:@"HelveticaNeue" size:36]
es decir [[self titleLabel] setFont:[UIFont systemFontOfSize:36]];
Si está buscando un código rápido:
var titleLabel = UILabel()
titleLabel.font = UIFont(name: "HelveticaNeue-UltraLight",
size: 20.0)