uiimage截取一部分, iOS6/7 deltas

        UIImage截取其中的一部分

UIImage  *bg = XXXX
CGRect rect = CGRectMake( 0, 20, 320, 44);
CGImageRef p_w_picpathRef = CGImageCreateWithImageInRect(bg.CGImage, rect);
bg = [UIImage p_w_picpathWithCGImage:p_w_picpathRef];
CGImageRelease(p_w_picpathRef);


        iOS6/7 deltas做6,7的適配,看到一篇文章解釋的很清楚,但是我在用UINavigationBar的時候不好用,還是得加代碼寫偏移。

第一步:不要勾選xib中的Use Autolayout,如下圖:

Center

第二步:第二步:選擇View as “ios6.1 and Earlier”,還是上圖位置處;

第三步:在Size Inspector中,有一ios6/7 Deltas:分別表示在PosX的增量、PosY的增量、寬度增量、高度增量。

Center
ps:在“ios6.1 and Earlier”模式下,由於status bar的高度爲20,所以當app運行在ios7.0模式下時,需要view向下移動20像素,因此在ΔY上設置爲20.
tableView座標向下移動了20,由於整個屏幕的高度是不變的,所以在“ios7.0 and Later”模式下,需要將tableView的高度減去20像素,即在“ios6.1 and Earlier”模式下,設置tableView的ΔHeight爲 -20。如果不設置ΔHeight,tableView底部會有20像素是不可見的,可以測試demo看看。
***注***:Δ,正數表示增,負數表示減。

第四步:ok,設置完成,到IOS上看效果:

Center

是不是神奇的發現跟以前的有似曾相識的趕腳呢。。。這樣“ios6.1 and Earlier”和“ios7.0 and Later” UI佈局便統一了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章