IOS基礎 總結

2021-07-03 05:00:41 字數 2163 閱讀 2288

(一)在.m檔案中宣告的方法都是私有方法,外界是無法訪問的,這就保證了程式的封裝性

(二)uiview常見屬性

@property(nonatomic,readonly) uiview *superview;

獲得自己的父控制項物件

@property(nonatomic,readonly,copy) nsarray *subviews;

獲得自己的所有子控制項物件

@property(nonatomic) nsinteger tag;

控制項的id\標識,父控制項可以通過tag來找到對應的子控制項

@property(nonatomic) cgaffinetransform transform;

控制項的形變屬性(可以設定旋轉角度、比例縮放、平移等屬性)

@property(nonatomic) cgrect frame;

控制項所在矩形框在父控制項中的位置和尺寸(以父控制項的左上角為座標原點)

@property(nonatomic) cgrect bounds;

控制項所在矩形框的位置和尺寸(以自己左上角為座標原點,所以bounds的x\y一般為0)

@property(nonatomic) cgpoint center;

控制項中點的位置(以父控制項的左上角為座標原點)

(三)uiview常見方法

- (void)addsubview:(uiview *)view;

新增乙個子控制項view

- (void)removefromsuperview;

從父控制項中移除

- (uiview *)viewwithtag:(nsinteger)tag;

根據乙個tag標識找出對應的控制項(一般都是子控制項)

(四)images.xcassets檔案中不能識別jpg格式的檔案

(五)如果發現通過**無法修改控制項的位置或者尺寸時,應該去掉storyboard裡面的autolayout功能,這是自ios6開始出現的特性

autolayout是用來自動布局的,用來束縛控制項的位置和尺寸。去掉這個功能,控制項的位置和尺寸就不再有一些固定的束縛

(六)對於控制項的大小位置旋轉等屬性的改變需要注意,這些都是由結構體屬性控制的

oc語法規定:不允許直接修改物件的結構體屬性的成員,所以要修改這些屬性值

必須首先獲取控制項的結構體,修改之後再賦值。

(七)通過以下屬性可以修改控制項的位置

(1)frame.origin

(2)center

通過以下屬性可以修改控制項的尺寸

(1)frame.size

(2)bounds.size

(八)利用transform屬性可以修改控制項的位移(位置)、縮放、旋轉

建立乙個transform屬性

(1)cgaffinetransform cgaffinetransformmaketranslation(cgfloat tx,  cgfloat ty) ;

(2)cgaffinetransform cgaffinetransformmakescale(cgfloat sx, cgfloat sy);

(3)cgaffinetransform cgaffinetransformmakerotation(cgfloat angle)

(angle是弧度制,並不是角度制)

在某個transform的基礎上進行疊加

(1)cgaffinetransform cgaffinetransformtranslate(cgaffinetransform t, cgfloat tx, cgfloat ty);

(2)cgaffinetransform cgaffinetransformscale(cgaffinetransform t, cgfloat sx, cgfloat sy);

(3)cgaffinetransform cgaffinetransformrotate(cgaffinetransform t, cgfloat angle);

(九)清空之前設定的transform屬性

view.transform = cgaffinetransformidentity;

(十)storyboard的本質就是根據圖形介面描述轉成相應的**

(十一)

動畫的實現兩種方式:

第一種:

頭尾式[uiview beginanimations:nil context:nil];

iOS基礎 CoreData 總結

coredata 資料持久化框架是cocoa api的一部分,它允許按照 實體 屬性 值 模型組織資料,並以xml 做mac os用 二進位制,或者sqlite資料檔案的格式持久化資料.coredata主要提供 物件 關係對映 orm 功能,把oc物件轉化為資料儲存到檔案,也可以資料轉化成oc物件....

iOS基礎總結一(KVC KVO簡述)

1 檢查是否存在相應key的set方法,如果存在,就呼叫set方法 2 如果set方法不存在,就會查詢與key相同名稱且帶下劃線的成員屬性,如果有,則直接給成員屬性賦值 3 如果沒有找到 key,就會查詢相同名稱的屬性key。如果有,就直接賦值 4 如果還沒有找到,則會呼叫valueforundef...

iOS基礎 Block變數截獲(總結)

nsinteger number 30 nsinteger block nsinteger nsinteger nsinteger n num 5 nslog zd block 10 這裡輸出結果是 40,而不是 15,原因是對區域性變數 number 的截獲是 值截獲 在 block 裡面修改 n...