ios 基本知識總結(一)

2021-07-15 06:35:51 字數 2588 閱讀 4281

一、label換行

警告:label的高度起碼要有2行的高度,不然,無論怎麼設定,都不會出現換行效果。如果要設定tableviewcell裡的文字換行,設定cell高度的時候,請先在tableview的xib檔案中設定cell的高度,不然cell的高度滿足不了換行的高度,是沒有效果的。

//換行,一般設定2個屬性,linebreakmode和numberoflines ,

//numberoflines,設定行數,值為0,代表多行。也可以指定行數,列如 numberoflines = 2;

self.labelsummary.numberoflines = 0;

//在autolayout環境下實現多行label需要將這個屬性設定一下,當大於一行時進行自動分行。

self.labelsummary.preferredmaxlayoutwidth = 200;

二、nsnumber基本使用

1、當需要使用int型別的變數的時候,可以像寫c的程式一樣,用int,也可以用nsinteger,但更推薦使用nsinteger,因為這樣就不用考慮裝置是32位的還是64位的。

2、有人說既然都有了nsinteger等這些基礎型別了為什麼還要有nsnumber?它們的功能當然是不同的。

nsinteger是基礎型別,但是nsnumber是乙個類。如果想要儲存乙個數值,直接用nsinteger是不行的,比如在乙個array裡面這樣用:

nsarray *array= [[nsarray alloc]init];

[array addobject:3];//會編譯錯誤

這樣是會引發編譯錯誤的,因為nsarray裡面放的需要是乙個類,但『3』不是。這個時候需要用到nsnumber:

nsarray *array= [[nsarray alloc]init];

[array addobject:[nsnumber numberwithint:3]];

cocoa提供了nsnumber類來包裝(即以物件形式實現)基本資料型別。

例如以下建立方法:

+ (nsnumber*)numberwithchar: (char)value;

+ (nsnumber*)numberwithint: (int)value;

+ (nsnumber*)numberwithfloat: (float)value;

+ (nsnumber*)numberwithbool: (bool) value;

還有很多初始化方法:

– initwithbool:  

– initwithchar:

– initwithdouble:

– initwithfloat:

– initwithint:

– initwithinteger:

– initwithlong:

– initwithlonglong:

– initwithshort:

– initwithunsignedchar:

– initwithunsignedint:

– initwithunsignedinteger:

– initwithunsignedlong:

– initwithunsignedlonglong:

– initwithunsignedshort:

將基本型別資料封裝到nsnumber中後,就可以通過下面的例項方法重新獲取它:

- (char)charvalue;

- (int)intvalue;

- (float)floatvalue;

- (bool)boolvalue;

- (nsstring*)stringvalue;

三、oc常用的型別轉換

1、int轉nsstring,double轉nsstring

int useridint = 1;

nsstring *user_id = [nsstring stringwithformat:@"%d", useridint];

double d = 2.0;

nsstring *user_name = [nsstring stringwithformat:@"%lf", d];

四、nsstring 常用方法

1、追加字串,放在原字串的末尾

nsmutablestring *str = @"123456789";
2、擷取字串,按照所給出的位置,長度,任意地從字串中擷取子串

nsmutablestring *str = @"123456789";

nslog(@"user_name:%@",[str substringwithrange:nsmakerange(0, 4)]);

//列印結果為:user_name:1234

基本知識總結一

一.物件導向和面向過程的區別 面向過程就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候乙個乙個依次呼叫就可以了。物件導向是把構成問題事務分解成各個物件,建立物件的目的不是為了完成乙個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為。例如五子棋,面向過程的設計思路就是...

BIOS基本知識總結

什 麼 是 bios 計算機使用者在使用計算機的過程中,都會接觸到bios,它在計算機系統中起著非常重要的作用。bios,完整地說應該是rom bios,是唯讀儲存器基本輸入 輸出系統的簡寫,它實際上是被固化到計算機中的一組程式,為計算機提供最低階的 最直接的硬體控制。準確地說,bios是硬體與軟體...

C基本知識總結

c語言關鍵字總共有32個.資料型別14個 void,char,int,float,double,short,long,signed,unsigned,struct,union,enum,typedef,sizeof.控制類別6個 auto,static,register const,volatile...