ios基礎知識 06

2021-07-13 04:15:01 字數 2371 閱讀 4473

零散基礎知識:

1.只要被static修飾的區域性變數,只會初始化一次,在整個程式執行過程中,只有乙份記憶體;

2.oc語法細節:不允許直接修改oc物件的結構體屬性的成員,所有可以通過cgmake(),或先把屬性支賦給乙個值,然後通過改變賦給的那個值,在把那個值賦給屬性值;

3.uiscrollview:

1).    shouview.clipstobounds = yes;超出的部分隱藏

2).    scrollview:如果想禁止某個方向的滾動,那麼就可以直接設定width=0或height = 0;

3).    如果遇到uiscrollview無法滾動的解決辦法:

1>.沒有設定contentsize;

2>.scrollenabled = no;

3>.沒有接受到觸控事件userinteractionenable= no;

4.所謂模型,其實就是資料模型,專門用來存放資料的物件,用它來表示資料會更加專業

1).    模型設定資料和取出資料都是通過它的屬性,屬性名如果寫錯了,編譯器會馬上報錯,因此,保證了資料的正確性

2).    使用模型訪問屬性時,編譯器會提供一系列的提示,提高編碼效率

jack

";3).    字典轉模型的過程最好封裝在模型內部

4).    模型應該提供乙個可以傳入字典引數的構造方法

-( instancetype)initwithdict:(

nsdictionary*)dict;

+( instancetype)***withdict:(

nsdictionary*)dict;

5.  

instancetype

在型別表示上,跟

id一樣,可以表示任何物件型別;

instancetype

只能用在返回值型別上,不能像

id一樣用在引數型別上;

instancetype比id

多乙個好處:編譯器會檢測

instancetype

的真實型別;

//...//

載入xib檔案:

方式1:

nsarray *objs = [[nsboundle mainbundle]loadnibnamed:@」test」 owner:nil options:nil];

[self.view addsubview:objs[1]];

方式2:

乙個物件就代表乙個  檔案:

uinib *nib = [uinib nibwithnibname:@」test」bundle:[nsbundle mainbundle]];

一般情況下,bundle引數nil,預設就是

uinib *nib = [uinib nibwithnibname:@」test」bundle:nil];

nsarray *objs = [nibinstantiatewithowner:nil options:nil];

[self.view addsubview:[objs lastobject]];

注意:u通過xib\storyboard建立

-初始化時不會呼叫initwithframe:方法,只會呼叫initwithcoder:方法

-初始化完畢後會呼叫awakefromnib方法

設定監聽事件常用的

3種方式

:1

>

通過addtarget方式,

但是這種方式只能監聽一些

"單擊事件"、

"滾動條滾動事件"等

,有些事件通過

addtarget

方式監聽無效,比如

"value changed"

事件。

注意:   addtarget **有個條件:必須繼承uicontrol

2>

通過**

, 文字框的**協議

"uitextfielddelegate"

。演示:textfieldshouldbeginediting

方法。

/** 演示**:

// 為某個文字框設定**

- (void)viewdidload

// 讓當前控制器遵守uitextfielddelegate協議, 並且實現- (bool)textfieldshouldbeginediting:(uitextfield *)textfield方法, 返回yes

- (bool)textfieldshouldbeginediting:(uitextfield *)textfield

*/

C 基礎知識06

氣泡排序法 讓陣列中的元素兩兩比較 第i個與第i 1個比較 經過 n i 1 遍比較,陣列中的元素能夠按照預期規律排序.要從大到校排序,用 比較.規律 1.n個數需要排n 1趟 2.第j趟需要比較的次數為n j次 例 inttemp,i,j intscore 迴圈比較的趟數 for i 0 i sc...

ios基礎知識

1.2 plist xml格式檔案通常用於儲存使用者設定 pch 預編譯檔案頭 xib nte ce builder 的圖形介面設計文件 storyboard是ios 5的新特徵,旨在代替歷史悠久的nib xib 3 4 viewcontroller 建立viewcontroller時,執行load...

iOS 基礎知識

幾種寫法的區別 const nsstring conststring1 i am a const nsstring string nsstring const conststring2 i am a nsstring const string static const nsstring static...