小筆記,盜墓筆記小說
快速建立對象的時候系統會自動釋放一次,如:
NSDictionary *dic =[NSDictionary dictionary]; //此時系統自動自動釋放一次記憶體,對象引用計數就 ' -1 '
建立(複製)不可變的對象用 copy;
建立(複製)可變的對象用 MutableCopy;
frame :是以父控制項為參考系,設定自己在父控制項中的座標,以及設定自己的寬高,frame是以自身左上方做固定;
frame有一個set方法,專一用來在方法中設定在所有子控制項的frame使用.
frame中有一個結構體:
1 CGRectGetHeight(self.view.frame); //擷取高2 CGRectGetWidth(self.view.frame);//擷取寬3 CGRectGetMaxX(self.view.frame);//擷取最大X值4 CGRectGetMaxY(self.view.frame);5 CGRectGetMidX(self.view.frame);//擷取中間X值6 CGRectGetMidY(self.view.frame);7 CGRectGetMinX(self.view.frame);//擷取最小X值8 CGRectGetMinY(self.view.frame);
bounds :是以自身為參考系,預設座標為(0,0),但主要作用是用來設定控制項自身大小使用的,以其他控制項的Bounds(包含:寬 和 高)為參考對象,設定自身的大小,一般直接用,bounds是以自身中心點做固定;
例如:
// [UIScreen(螢幕) mainScreen(主畫面)]
1 self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds]; //直接拿裝置螢幕的bounds(寬高)來設定自己的bounds;
Transform:
1 //定義一個Butoon 2 UIButton *button =[[UIButton alloc]init]; 3 // 4 // transform:是一個結構體,包含了: 5 // CGAffineTransformMake(寬, 正數(順時針旋轉), 負數(逆時針旋轉), 高, X, Y) 6 移動: 7 CGAffineTransformTranslate(button.transform, -50, 50);//不帶'Make'多了一個參數項,是在目前的‘transform’基礎上做移動改變 8 CGAffineTransformMakeTranslation(-50, 50); //帶有“Make”是基於原來的位置與改變後的值兩點之間來回移動 9 // 當需要把一個控制項的位置移回到原來的位置時,就可以直接賦值‘CGAffineTransformIdentity’10 button.transform =CGAffineTransformIdentity;11 縮放:12 CGAffineTransformScale(button.transform, 1.5, 1.5);//不帶'Make'多了一個參數項,是在目前的‘transform’基礎上做縮放改變13 CGAffineTransformMakeScale(1.5, 1.5); //帶有“Make”是基於原來的大小與改變後的大小值之間來回切換14 旋轉: 15 CGAffineTransformRotate(button.transform, M_PI_4); //旋轉4分之一度
MVC : M:(模型) V: view(介面) C:ViewController(控制器)
每個view都有一個屬性參數'subviews',它是一個數組屬性,包含了該view自身所包含的所有子控制項,可以拿他查詢子控制項的個數(subviews.count),或者遍曆所有子控制項.
一個有時候用的上的方法:
1 [self.view.subviews makeObjectsPerformSelector:@selector(click)]; //遍曆所有的子控制項對象,讓他沒每一個都執行後面的方法
1 [self.view.subviews enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL * _Nonnull stop) {2 //view就是一個數組,利用數組的遍曆方法,遍曆view中所有的子控制項,擷取每個對象'obj',每個對象下標'idx',停止遍曆條件'stop'3 }];
父控制項view有一個使用者互動開關: 1 self.view.userInteractionEnabled = NO; //關閉之後所有的子控制項也將隨之關閉使用者互動
1 [self.view bringSubviewToFront:buttom]; //父控制項把子控制項帶到當前頁面的最上層進行展示
UIButton :想要取出當前按鈕 button 的某個屬性內容,就可以調用'.current',無論想要取出當前按鈕的任何屬性,比片,文字,文字顏色.....都可以使用,
例如: 1 NSString *title =buttom.currentTitle; //取出當前按鈕的文本