UI-UIView

1.UIView 基本:

#pragma window:
    // widows三步:初始化---設置顏色---可見
    // 1. 初始化window
    _window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; // 以調用的作爲座標原點
    
    // 2. 給window設置顏色
    _window.backgroundColor = [UIColor whiteColor];
    // 3.讓window可見
    [_window makeKeyAndVisible];

#pragma UIView:
    // CGRect:CGPoint:左上角的點   CGSize:width-height
    // view三步:初始化設置座標,寬 高---設置顏色---添加到window
    UIView *view1 = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 300, 300)];//50-50-300-300
    UIView *view2 = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];//50-50-200-200
    UIView *view3 = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 100, 100)];
    UIView *view4 = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 150, 150)];
    UIView *view5 = [[UIView alloc] initWithFrame:CGRectMake(50, 50, 250, 250)];
    view1.backgroundColor = [UIColor purpleColor];
    view2.backgroundColor = [UIColor redColor];
    view3.backgroundColor = [UIColor blueColor];
    view4.backgroundColor = [UIColor greenColor];
    view5.backgroundColor = [UIColor lightGrayColor];

    // 將子視圖添加到window上
    [_window addSubview:view1];
    [_window addSubview:view2];
    [_window addSubview:view3];
    [_window addSubview:view4];
    [_window addSubview:view5];

 // alpha:透明度  值越小,越透明  範圍:0.0--1.0
    view1.alpha = 0.1;
    
    // tag值從101開始設置,不重複
    view1.tag = 101;
    UIView *viewTemp = [_window viewWithTag:101];
viewTemp.backgroundColor = [UIColor colorWithRed:0.5 green:0.5 blue:0.3 alpha:1.0]; // 這個也是設置顏色的方法:RGB

        view1.hidden = NO;
        ((UIView *)view1.subviews[0]).backgroundColor = [UIColor blueColor];
        view6.superview.backgroundColor = [UIColor redColor];
alpha:透明度

tag:標記視圖,可以根據tag獲取對應視圖

hidden:設置隱藏和顯示(會影響自身及其所有子視圖)  某個視圖隱藏之後,它上面的所有的子視圖都會隱藏

subviews:是個數組 獲取子視圖 用下標獲取的是id--所以要強制轉換一下

superview:通過子視圖獲取父視圖


1. A addSubview:B--------將視圖B添加到A中

2. A insertSubview:B atIndex:C------將B插入到A的子視圖index爲2的位置(從0層開始)放到A的第二層視圖。。

3. A insertSubview:B belowSubview:C------將B插入在A已有的子視圖C的下面

4. A insertSubview:B aboveSubview:C ---------將B插入在A已有的子視圖C的上面

5. A bringSubviewToFront:B-------將B放到A中所有視圖的最上面

6. A sendSubviewToBack:B-------將B放到A中所有視圖的最下面

7. exchangeSubviewAtIndex:A  withSubviewAtIndex:B --------交換A B兩個視圖

8. A removeFromSuperview--------將A從其父視圖上刪除

2. UILable:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    _window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
    _window.backgroundColor = [UIColor whiteColor];
    [_window makeKeyAndVisible];
    
    // 背景視圖
    UIView *rootView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds];
    rootView.backgroundColor = [UIColor whiteColor];
    [_window addSubview:rootView];
    [rootView release];
    

    
    // Lable繼承了UIView:lable.tag lable.alpha lable.hidden lable.suoerview  lable.subviews  <----來自父類的屬性
    UILabel *lable = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, 200, 300)];
    lable.backgroundColor = [UIColor grayColor];
    [rootView addSubview:lable];
    lable.text = @"hehe the little dog is eating shit."; // 文本內容
    lable.font = [UIFont systemFontOfSize:45];  // 字體大小
    lable.textAlignment = NSTextAlignmentCenter;  // 字體對齊方式:居中 居右...
    lable.textColor = [UIColor blueColor];  // 字體顏色
    lable.shadowColor = [UIColor blackColor]; // 陰影的顏色
    lable.shadowOffset = CGSizeMake(5, 0); // 陰影和原字體的偏移量
    lable.numberOfLines = 5; // 展示的行數。當行數爲0的時候,會自動換行



    // 設置文字過長時的顯示格式:
    lable.lineBreakMode = NSLineBreakByCharWrapping;
    /*
     label.lineBreakMode = NSLineBreakByCharWrapping;以字符爲顯示單位顯
     示,後面部分省略不顯示。
     label.lineBreakMode = NSLineBreakByClipping;剪切與文本寬度相同的內
     容長度,後半部分被刪除。
     label.lineBreakMode = NSLineBreakByTruncatingHead;前面部分文字
     以……方式省略,顯示尾部文字內容。
     label.lineBreakMode = NSLineBreakByTruncatingMiddle;中間的內容
     以……方式省略,顯示頭尾的文字內容。
     label.lineBreakMode = NSLineBreakByTruncatingTail;結尾部分的內容
     以……方式省略,顯示頭的文字內容。
     label.lineBreakMode = NSLineBreakByWordWrapping;以單詞爲顯示單位顯
     示,後面部分省略不顯示。
     */

lineBreakMode出自:http://blog.csdn.net/zhaopenghhhhhh/article/details/16331041      UILable詳解


 NSLog(@"bounds = %@", NSStringFromCGRect(view1.bounds));
 NSLog(@"frame = %@", NSStringFromCGRect(view1.frame));


總結:(圖片所示)



發佈了44 篇原創文章 · 獲贊 0 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章