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布局便统一了。


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