#import "AppDelegate.h"app
@interface AppDelegate ()ide
@end 字體
@implementation AppDelegateui
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {this
// Override point for customization after application launch.spa
_window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];.net
[_window setBackgroundColor:[UIColor whiteColor]];3d
//自動計算label高度的前提是固定label的寬度rest
//固定寬度爲200orm
NSString *str = @"很垃圾頭奧特顧阿焊工我鞥接啊奧爾偶偶拒絕嘎嘎啊就怕嘔吐拍就阿訇噶舉啊過哈多蛾";
//計算顯示當前字符串須要多大的空間(寬和高);
//參數一:限制顯示當前字符串的最大寬度和最大高度;
//參數二:渲染模式
//參數三:字符串的屬性(設置文字顏色和字體)
//NSFontAttributeName設置字體的鍵;
//NSForegroundColorAttributeName設置文字顏色
//參數四:上下文;
CGRect rect = [str boundingRectWithSize:CGSizeMake(200, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:
@{NSFontAttributeName:[UIFont systemFontOfSize:14],NSForegroundColorAttributeName:
[UIColor redColor]} context:nil];
//建立label顯示文字
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, rect.size.width, rect.size.height)];
//將label添加到界面上
[_window addSubview:label];
//設置文字
label.text = str;
[label setFont:[UIFont systemFontOfSize:14]];//這裏必須設置顯示的字體與計算字體同樣大或者比計算的字體小一些,不然label顯示不完
[label setBackgroundColor:[UIColor redColor]];
//label.textColor = [UIColor cyanColor];
//設置換行
label.numberOfLines = 0;
label.lineBreakMode = NSLineBreakByWordWrapping;
[_window makeKeyAndVisible];
return YES;
}
- (void)applicationWillResignActive:(UIApplication *)application {
// Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
// Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
}
- (void)applicationDidEnterBackground:(UIApplication *)application {
// Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
// If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
}
- (void)applicationWillEnterForeground:(UIApplication *)application {
// Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
}
- (void)applicationDidBecomeActive:(UIApplication *)application {
// Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
}
- (void)applicationWillTerminate:(UIApplication *)application {
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}
@end