3.一些小tips

1.当启动的图片缺少一个空的时候,可以点击已有的图片,show in Finder ,然后更改对应的json文件就可以了

                      3.一些小tips_第1张图片

2.ios7以后,状态栏默认交给控制器去管理。

-(BOOL)prefersStatusBarHidden
{
    return YES;
}
如果要设置启动的时候隐藏状态栏的话:

勾上图上的勾就可以实现,然后再下面这个方法里设置状态栏在启动后重新显示就好了。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    application.statusBarHidden = NO;
    return YES;
}

3.程序图标运行在ios6上会有玻璃球效果,去除的方法:

3.一些小tips_第2张图片

将箭头所指的勾选上,代表我们已经进行渲染过了,不需要系统进行渲染。

4.设置导航条的主题,如果一个app所有的导航条都长一个模样,就可以设置一次。以后所有的导航条都是这个样子。

//3.设置导航条主题
    UINavigationBar *navBar = [UINavigationBar appearance];
    [navBar setBackgroundImage:[UIImage imageNamed:@"NavBar64"] forBarMetrics:UIBarMetricsDefault];
NSMutableDictionary *md = [NSMutableDictionary dictionary];
    md[NSFontAttributeName] = [UIFont systemFontOfSize:16];
    md[NSForegroundColorAttributeName] = [UIColor whiteColor];
    [navBar setTitleTextAttributes:md];

         [UIDevicecurrentDevice].systemVersion 可以获得系统的版本号。

5.当barButtonItem不能满足需求的时候,我们可以直接往bar上拖一个button上去,就可以同时设置它的标题和图片了.

6.根据文字计算所占用的frame的 方法

CGRect titleRect = [title boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:md context:nil];

7.编译器和系统适配,通过有没有定义相应的宏来判断

#ifdef __IPHONE_7_0
    if (iOS7) { // 是IOS7
        CGRect titleRect = [title boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:md context:nil];
        titleW = titleRect.size.width;
    }else
    {
        // 非IOS7
        CGSize titleSize = [title sizeWithFont:self.myFont];
        titleW = titleSize.width;
    }
#else
    // XCODE4
    CGSize titleSize = [title sizeWithFont:self.myFont];
    titleW = titleSize.width;
#endif

8.视图的扩展,下面代表视图控制器的view会 全屏显示。也可以不全屏显示。

self.edgesForExtendedLayout = UIRectEdgeAll;

9.当该类第一次用于创建对象的时候会调用一次,以后再创建新对象就不会调用该方法。

+ (void)initialize
{
    if (self == [<#ClassName#> class]) {
        <#statements#>
    }
}


10.在storyboard中,同时按住ctrl和shift键,再点击相应界面,会出现点击位置所有的对象列表,便于选择。

11.当我们遇到一个类有一个属性只有两个取值以表现显示不同的视图,一种做法是我们可以把该属性设置为一个枚举类型,然后声明。还有另一种做法是设置两个子类继承该类,这两种子类就可以以类名来区分这个属性取不同的值。



你可能感兴趣的:(图片)