首页 > 代码库 > 【iOS开发-25】UIDevice查看系统信息,从一个问题开始如何快速找到自己想要的属性和方法并看懂它

【iOS开发-25】UIDevice查看系统信息,从一个问题开始如何快速找到自己想要的属性和方法并看懂它

假设需要解决的问题:写代码时遇到一种情况,就是需要判断iOS版本,可能低版本和高版本需要增减一些代码,此时,如何判断iOS版本?


(1)第一步,当然度娘,输入“iOS 判断系统版本”。


(2)第二步:打开前几个你会发现,其实都有[UIDevice currentDevice]的身影,就算是新手,估计也知道UIDevice应该是个大BOSS,我们在自己的xcode里面输入这个。


(3)第三步:我们按住CMD时鼠标经过UIDevice时时可以点击的,所以点击吧少年,然后就进入到一片代码海洋中。


(4)其实有property的几乎都是属性,没有的几乎都是方法,前者用点属性 “.” 来调用,后者一般都是直接输入即可。


(5)如果你对需要的方法或者属性有点熟悉的话,可以CMD+F输入模糊查询,这样能快速定位需要的东西。


设备常用的信息,就这样利用即可:

    //获取iOS的版本号,如8.0
    NSLog(@"%@",[[UIDevice currentDevice]systemVersion]);
    //获取系统名字如iPhone OS
    NSLog(@"%@",[[UIDevice currentDevice]systemName]);
    //获取设备名字,属于谁的设备,即注册的苹果账号,模拟的就是iPhone Simulator
    NSLog(@"%@",[[UIDevice currentDevice]name]);
    //设备型号,比如是iPhone还是iPad,这里是模拟的iPhone Simulator
    NSLog(@"%@",[[UIDevice currentDevice]model]);
    //还能获得电池使用情况,还能获得屏幕是竖屏还是横屏等信息

另一个问题:

导航条背景图片的高度如果超出导航条高度,好像在iOS 8.0中貌似很难调整啊,估计只能养成良好习惯,把图片宽高标准化一下再使用。

    //如果图片超出导航条高度,则会跑到状态栏下面,而且无法使用statusBarStyle来重置状态栏,所以最好的办法是把图片尺寸做合适了
    [self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"big2.png"] forBarMetrics:UIBarMetricsDefault];
    [UIApplication sharedApplication].statusBarStyle=UIStatusBarStyleLightContent;


【iOS开发-25】UIDevice查看系统信息,从一个问题开始如何快速找到自己想要的属性和方法并看懂它