在IOS 中,應用[UIFont familyNames]這個辦法獲得72種體系字體。
應用[UIFont fontWithName:@"Zapfino" size:18]這個辦法為空間中的文字設置字體和字號。
可以經由過程for輪回批量界說控件並設置屬性。
以下法式獲得體系72種字體並存儲在一個數組中,有兩種辦法,一種是經由過程for輪回拿到每種字體並添加到可變數組中,另外一種是直接把72種字體賦值給一個數組。
注:在頁面控件較少的情形下選擇手動創立每一個控件,在控件數目較年夜且有紀律排布的時刻應用輪回批量創立控件。可以經由過程獲得硬件裝備的分辯率進而讓控件的尺寸主動適配裝備。詳細方法為:
//屏幕尺寸 CGRect rect = [[UIScreen mainScreen] bounds]; CGSize size = rect.size; CGFloat width = size.width; CGFloat height = size.height; NSLog(@"print %f,%f",width,height); //分辯率 CGFloat scale_screen = [UIScreen mainScreen].scale; width*scale_screen,height*scale_screen
法式內容:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 界說一個可變數組,用來寄存一切字體
NSMutableArray *fontarray = [NSMutableArray arrayWithCapacity:10];
// 遍歷UI字體
for (id x in [UIFont familyNames]) {
NSLog(@"%@",x);
[fontarray addObject:x];
}
// 直接把字體存儲到數組中
NSArray *fontarrauy2 = [UIFont familyNames];
NSLog(@"%@",fontarrauy2);
// 創立一個label,用來顯示設定某種字體的字符串
UILabel *mylab1 = [[UILabel alloc]initWithFrame:CGRectMake(100, 100, 200, 50)];
mylab1.font = [UIFont systemFontOfSize:20];
mylab1.font = [UIFont fontWithName:@"Zapfino" size:18];
mylab1.font = [UIFont fontWithName:[fontarray objectAtIndex:10] size:18];
mylab1.text = @"HelloWorld";
[self.view addSubview:mylab1];
// 新建一個可變數組,用來寄存應用for輪回批量創立的label
NSMutableArray *labarr = [NSMutableArray arrayWithCapacity:100];
for (int x=0; x<24; x++) {
for (int y=0; y<3; y++) {
// 輪回創立72個label,每一個label橫向間距135-130=5,縱向間距30-28=2,
UILabel *lab = [[UILabel alloc]initWithFrame:CGRectMake(y*135+7, x*30+20, 130, 28)];
lab.backgroundColor = [UIColor colorWithRed:0.820 green:0.971 blue:1.000 alpha:1.000];
lab.text = @"HelloWorld";
// 將創立好的label參加到可變數組
[labarr addObject:lab];
}
}
// 應用for輪回給72個label的字體設置各類字體魄式
for (int i=0; i<72; i++) {
UILabel *lab = [labarr objectAtIndex:i];
NSString *fontstring = [fontarray objectAtIndex:i];
lab.font = [UIFont fontWithName:fontstring size:18];
[self.view addSubview:[labarr objectAtIndex:i]];
}
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
以上就是本文的全體內容,願望對年夜家的進修有所贊助。
【IOS開辟中應用UIFont設置字體及批量創立控件】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!