【iOS开发-25】UIDevice查看系统信息,从一个问题開始怎样高速找到自己想要的属性和方法并看懂它
如果须要解决的问题:写代码时遇到一种情况,就是须要推断iOS版本号,可能低版本号和高版本号须要增减一些代码,此时。怎样推断iOS版本号?
(1)第一步。当然度娘。输入“iOS 推断系统版本号”。
(2)第二步:打开前几个你会发现。事实上都有[UIDevice currentDevice]的身影,就算是新手,预计也知道UIDevice应该是个大BOSS。我们在自己的xcode里面输入这个。
(3)第三步:我们按住CMD时鼠标经过UIDevice时时能够点击的,所以点击吧少年,然后就进入到一片代码海洋中。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2Vpc3ViYW8=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
(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查看系统信息,从一个问题開始怎样高速找到自己想要的属性和方法并看懂它的更多相关文章
- iOS开发UI篇—使用UItableview完成一个简单的QQ好友列表(一)
iOS开发UI篇—使用UItableview完成一个简单的QQ好友列表(一) 一.项目结构和plist文件 二.实现代码 1.说明: 主控制器直接继承UITableViewController // ...
- iOS开发:XCTest单元测试(附上一个单例的测试代码)
测试驱动开发并不是一个很新鲜的概念了.在我最开始学习程序编写时,最喜欢干的事情就是编写一段代码,然后运行观察结果是否正确.我所学习第一门语言是c语言,用的最多的是在算法设计上,那时候最常做的事情就是编 ...
- iOS开发25个性能调优技巧
1. 用ARC管理内存 ARC(Automatic Reference Counting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露.它自动为 ...
- iOS开发UI篇—使用UItableview完成一个简单的QQ好友列表(二)
一.实现效果 二.实现代码 1.数据模型部分 YYQQGroupModel.h文件 // // YYQQGroupModel.h // 02-QQ好友列表(基本数据的加载) / ...
- iOS开发25:使用SOAP访问Web服务
SOAP是简单对象访问协议,它可看成是HTTP与XML的结合,其中XML部分是作为HTTP报文的实体主体部分.具体信息可以参考百度百科. 在iOS中使用SOAP,需要我们自己组装XML格式的字符串,当 ...
- iOS开发~防止navigation多次push一个页面
在点击push下一个页面时,因为各种原因,点一下cell或按钮没有响应,用户可能就多点几下,这时候会打开好几个一样的页面. 这是因为push后的页面有耗时操作或者刚好push到另一个页面时,另一个页面 ...
- ios开发之--使用AFN上传3.1.0上传视频,不走成功回调原因及解决方法
在测试接口的时候,发现接口称走走了,但是success的回调不走,检查了下代码,发现没有初始化下面两个方法: manage.responseSerializer = [AFHTTPResponseSe ...
- iOS开发人员:事实上你还有非常多东西须要学
iOS 新特性总结(since iOS6) iOS 6 1.废除viewDidUnLoad 收到内存警告须要到didReceiveMemoryWarning中处理 [小技巧] -(void)didRe ...
- iOS开发:(线程篇-上)线程和进程
iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...
随机推荐
- Sublime的中文GBK显示乱码的解决方法
import urllib2,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd ...
- linux开发node相关的工具
epel-release yum install epel-release node yum install nodejs mongodb 安装mongodb服务器端 yum install mong ...
- UltraEdit字体设置(fontlink大法)
在网上游荡很久,查阅诸多资料,终于为UltraEdit选定了一套我喜欢的字体方案.这套字体方案是:英文字体使用Consolas,中文字体使用微软雅黑. 虽然说起来好像很清楚,但是因为在UltraEdi ...
- 自定义ListView adapter适配器
转自:http://hilary3113.iteye.com/blog/998352 listview加载adapter过程是这样的. 1 先判断adapter 有多少数据项,根据这个数据确定有多少i ...
- [译林军] 译~CrossBridge 简介
本文由 9ria 社区译林军翻译,转载请注明出处.加入译林军 :http://bbs.9ria.com/thread-286920-1-1.html CrossBridge 是 Adobe Fla ...
- 使button的背景色变为半透明的但不影响字体的透明度
效果如图: 然而做出这样的效果并不顺利, 刚开始的时候代码如下: UIButton *backButton = [UIButton buttonWithType:UIButtonTypeSystem] ...
- HttpClient使用例子
HttpClient client = new HttpClient(); String url = http://localhost:8080/ana/workFlowOaInterface.do? ...
- vc listview 大图标间距设置
SendMessage(this.listViewChart.Handle, LVM_SETICONSPACING, 0, 0x10000 * 140 + 130); 其中 ...
- time.h time_t
#include <stdio.h> #include <stddef.h> #include <time.h> int main(void) { time_t t ...
- STL中关联式容器的特性
1.map 代码如下: /* * map_1.cpp * * Created on: 2013年8月6日 * Author: Administrator */ #include <iostrea ...