一、判斷裝置
//裝置名稱
return
[uidevice currentdevice].name;
//裝置型號,只可得到是何裝置,無法得到是第幾代裝置
return
[uidevice currentdevice].model;
//系統版本型號,如iphone os
return
[uidevice currentdevice].systemversion;
//系統版本名稱,如6.1.3
return
[uidevice currentdevice].systemname;
//判斷是否為iphone
#define is_iphone (ui_user_inte***ce_idiom() == uiuserinte***ceidiomphone)
//判斷是否為ipad
#define is_ipad (ui_user_inte***ce_idiom() == uiuserinte***ceidiompad)
//判斷是否為ipod
#define is_ipod ([[[uidevice currentdevice] model] isequaltostring:@"ipod touch"])
//判斷是否為iphone5
#define is_iphone_5_screen [[uiscreen mainscreen] bounds].size.height >= 568.0f && [[uiscreen mainscreen] bounds].size.height < 1024.0f
二、uilabel的行間距
uilabel *label = [[uilabel alloc] initwithframe:labelframe];
[label setbackgroundcolor:[uicolor clearcolor]];
[label settextcolor:textcolor];
[label setnumberoflines:0];
label.font = textfont;
nsstring *labeltext = @"我是內容,我是內容,我是內容,我是內容,我是內容。";
nsmutableattributedstring *attributedstring = [[nsmutableattributedstring alloc] initwithstring:labeltext];
nsmutableparagraphstyle *paragraphstyle = [[nsmutableparagraphstyle alloc] init];
[paragraphstyle setlinespacing:linespace];//調整行間距
[attributedstring addattribute:nsparagraphstyleattributename value:paragraphstyle range:nsmakerange(0, [labeltext length])];
label.attributedtext = attributedstring;
[contentview addsubview:label];
[label sizetofit];
三、label的動態size
nsdictionary* attributes =@;
cgsize labelsize = [text boundingrectwithsize:maxsize options:nsstringdrawinguseslinefragmentorigin|nsstringdrawingusesfontleading|nsstringdrawingtruncateslastvisibleline attributes:attributes context:nil].size;
labelsize.height=ceil(labelsize.height);
return labelsize;
}
C 實用程式設計小技巧(不定時更新)
棧的定義及入棧出棧操作 include 定義 stack stk 入棧 stk.push 列印並出棧 while stk.empty cout 字串 int 引入標頭檔案 include string s to string int n int 字串 利用標準庫中的atoi函式 可以過濾掉字首0 s...
iOS開發小技巧總結
一 nslog的使用 nslog在除錯的時候,屢試不爽,可是在專案中用的太多,其實是會影響程式效能的,而且程式在非除錯模式下也看不到列印,多浪費資源呢?如果程式中使用的太多,發布前刪除又是乙個麻煩事,下個版本又要使用呢?因此,在pch檔案中,加乙個重寫列印的巨集,方便又安逸,還能提高逼格,經驗豐富的...
iOS開發中的小技巧
在ios7.0之後所有控制器預設全屏 由extendedges屬性控制 預設撐滿上下.如果ipad開發 需要橫屏還可以設定左右撐滿.但是scrollview及其子類新增入導航控制器中 自動會有上64 和下49的內邊距,由下面這個屬性控制,如果 主介面 沒有穿透效果 做下面兩個操作 collectio...