iOS-常用技巧,ios-技巧
技巧一:
我們在寫程式的時候,螢幕的寬高我們不能寫固定,例如寫成320,480之類的,因為我們要適配不同的手機。常用的一種方法是在 .pch檔案中設定寬高,因為.pch是一個先行編譯檔案,在全域都能訪問到。
#define ScreenHeight [UIScreen mainScreen].bounds.size.hight;
#define ScreenWidth [UIScreen mainScreen].bounds.size.width;
技巧二:
這個問題比較簡單,完全算不上技巧,但是有時我們會忽略這個用法。就是給UIView設定背景圖片。
_tabbarView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"tabbar_background.png"]];
技巧三:
我們的圖片是方形的,我們想讓它以圓形或者橢圓類似的形狀在介面上顯示。
_image = [[UIImageView alloc]initWithFrame:CGRectMake(0,0,80,80)];
_image.layer.cornerRadius = 40;//大小不同,形狀不同
_image.clipsToBounds = YES;
技巧四:
如何擷取主視窗的三種方法。
UIApplication *app=[UIApplication shareApplication];
1,UIWindow *window = app.keyWindow;
2,UIWindow *window = app.delegate.window;
3,UIWindow *window = [app.windows objectAtIndex:0];
當然我們也可以使用連寫的方法:比如:UIWindow *window = [UIApplication shareApplication].delegate.window;
技巧五:
我們有時候不小心修改了系統的API,或者其它的一些操作,出現了以下問題該怎麼辦?
錯誤資訊:fatal error :file /Application ……….
Note: after modifying system headers, please delete the module cache at /Users …..
解決辦法:前往/Users….這個檔案夾,刪除裡面的檔案,然後clean一下程式即可解決.
技巧五:
我們如何讓定時器暫停和開始,並不是開啟和關閉。
NSTimer *timer = [NSTimer sch……];
[timer setFireDate :[NSDate distantFuture]];//暫停
[timer setFireDate :[NSDate distantPass]]//開始
技巧六:
我們彈出的鍵盤通常都是字母鍵盤,如何彈出數字鍵台。
Textfiled.keyboardType = UIKeyboardTypeNumberPad;
技巧七:
在網路請求中,如果請求體中有漢字的話,請求會出錯,怎樣解決?
假設請求體為:NSString *urlString= @“http://v.juhe.cn/weather/index?cityname=北京”;
因為有漢字字元,請求會出錯。處理辦法:
urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
技巧八:
如何讓我們的圖片放大不變形。
_image = [[UIImage imageNamed:@"a.png"]stretchableImageWithLeftCapWidth:20 topCapHeight:10];