ios開發之父子視圖的關係



#import "AppDelegate.h"app


@interface AppDelegate ()ui


@end this


@implementation AppDelegatespa



- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {.net

    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];rest

    self.window.backgroundColor = [UIColor whiteColor];orm

    self.window.rootViewController = [[UIViewController alloc] init];get

    self.window.rootViewController.view.userInteractionEnabled = NO;it

    

    //========================================io

    //若是多個視圖添加到同一個父視圖上,公共部分,後添加的會覆蓋先添加的

    

    //建立紅色視圖

    UIView * redView = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 100, 100)];

    redView.backgroundColor = [UIColor redColor];

    redView.tag = 10;

    [self.window addSubview:redView];

    

    //建立黃色視圖

    UIView * yellowView = [[UIView alloc] initWithFrame:CGRectMake(80, 80, 100, 100)];

    yellowView.backgroundColor = [UIColor yellowColor];

    yellowView.tag = 20;

    [self.window addSubview:yellowView];

    

    //建立綠色視圖

    UIView * greenView = [[UIView alloc] initWithFrame:CGRectMake(110, 110, 100, 100)];

    greenView.backgroundColor = [UIColor greenColor];

    greenView.tag = 30;

    [self.window addSubview:greenView];

    

    

    //1.將一個視圖的層次設置成最上面

    //- (void)bringSubviewToFront:(UIView *)view;

//    [_window bringSubviewToFront:redView];

    

    //2.將某個視圖放到最下面

    //- (void)sendSubviewToBack:(UIView *)view;

//    [_window sendSubviewToBack:yellowView];

    

    //3.插入視圖(若是被插入的視圖已經顯示在界面上,那麼經過插入方法只是改變它的層次關係;若是被插入的視圖沒有添加到界面上,經過插入方法能夠將視圖添加到界面上,而且改變層次關係)

    //將某個視圖插入到指定的視圖上面

    //- (void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview;

//    [_window insertSubview:greenView aboveSubview:redView];

    

    //將某個視圖插入到指定視圖的下面

    [_window insertSubview:greenView belowSubview:yellowView];

    

    

    

    

    

    

    

    [self.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

相關文章
相關標籤/搜索