ios知识点】的更多相关文章

  IOS学习笔记48--一些常见的IOS知识点+面试题   1.堆和栈什么区别? 答:管理方式:对于栈来讲,是由编译器自动管理,无需我们手工控制:对于堆来说,释放工作由程序员控制,容易产生memory leak. 2.数组和链表什么区别? 答:数组是将元素在内存中连续存放,由于每个元素占用内存相同,可以通过下标迅速访问数组中任何元素. 链表恰好相反,链表中的元素在内存中不是顺序存储的,而是通过存在元素中的指针联系到一起. 3.delegate和notification什么区别,什么情况使用?…
OC的理解与特性 OC作为一门面向对象的语言,自然具有面向对象的语言特性:封装.继承.多态.它既具有静态语言的特性(如C++),又有动态语言的效率(动态绑定.动态加载等).总体来讲,OC确实是一门不错的编程语言, Objective-C具有相当多的动态特性,表现为三方面:动态类型(Dynamic typing).动态绑定(Dynamic binding)和动态加载(Dynamic loading).动态——必须到运行时(run time)才会做的一些事情. 动态类型:即运行时再决定对象的类型,这…
在controller中加载plist数据 1,设置属性NSArray 或可变数组NSMutableArray @property(nonatomic,strong)NSArray *message; 2,重写get方法,懒加载,获取plist的数据 -(NSArray*)messages{ if(_messages==nil){ //加载plist中的字典数据 //bundle中包含ios程序所有的资源 NSString* path=[[NSBundle mainBundle] pathFor…
感谢大神分享 文/Jack_lin(简书作者)原文链接:http://www.jianshu.com/p/5d2163640e26著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 序言 目前形势,参加到iOS队伍的人是越来越多,甚至已经到供过于求了.今年,找过工作人可能会更深刻地体会到今年的就业形势不容乐观,加之,培训机构一火车地向用人单位输送iOS开发人员,打破了生态圈的动态平衡.矫情一下,言归正传,我奉献一下,为iOS应聘者梳理一下面试题,希望能助一臂之力! OC的理解与特性…
1. @dynamic.@synthesize 2. iOS NSTimer 3. iOS 之 Aggregate Target 4. iOS 属性之assign.copy.retain 5. iOS 多线程 6. iOS 单例 7. iOS 之 UICollectionView 8. iOS 获取屏幕尺寸 9. #import与@class的区别 10. iOS 协议 11. iOS 之 Block Variable 12. iOS 之 工厂模式 13. iOS CoreData 之 简单使用…
3.nsmutablearray *a 如果直接赋值 a = @[@"d",@""]; 这个时候a 是不可变的 字典也是如此 2.如果接口调用错误的话 打印response   这里会提示 如果正确的话 就不会有这个提示 1.内存泄漏自动检测 第三方框架: pod 'MLeaksFinder', '~> 0.2.1' Block代码块中 使用了self 前边要加弱引用(__weak),全局变量不能在里边改变,改变会泄漏,可以使用属性值进行使用 iOS 进阶--…
最近面试,发现这些题 还不错,与大家分享一下,分三文给大家: 当然Xcode新版本区别,以及iOS新特性 Xcode8 和iOS 10 在之前文章有发过,感兴趣的可以查阅: http://www.cnblogs.com/xujiahui/p/6025830.html 不足之处望见谅. 之三: 1.写一个NSString类的实现 + (id)initWithCString:(c*****t char *)nullTerminatedCString encoding:(NSStringEncodin…
最近面试,与大家分享一下,分三文给大家: 当然Xcode新版本区别,以及iOS新特性 Xcode8 和iOS 10 在之前文章有发过,感兴趣的可以查阅: http://www.cnblogs.com/xujiahui/p/6025830.html 之二: 1.怎么样适配ios系统和ios屏幕 ios适配系统代码写法[[UIDevice currentDevice] systemVersion] 和NSFoundationVersionNumber也可以在base SDK 中修改版本号 ios8中…
UITableVIew是iOS开发中使用最为广泛的一种控件,对于UITableView的基本用法本文不做探讨,本文主要是针对UITableView的展开与收缩进行阐述,在文章的后面也会探讨一下横向table的用法: 1. UITableView的展开与收缩 下面通过两幅图来了解UITableView的展开与收缩的效果: 这种展开与收缩的原理其实非常简单,在使用该TableVIew的时候需要准备两个自定义的Cell,一个是未展开情况下的Cell,一个是展开后 的Cell,当点击某一行的展开/收缩按…
17  duplicate symbols for architecture armv7s 用cocoapods 的时候出现,这种错误一般是由重复引用库文件引起. 原因:自己尝试添加Reachability的时候,用import ""导入, 发现没又Reachability.h文件,就到link binary with libs里添加了Reachability静态库. 使用cocoapod 文件都是以import <> 方式导入,删掉project里添加的,无需添加,直接引…
感谢分享 原文链接:http://www.jianshu.com/p/5d2163640e26 序言 目前形势,参加到iOS队伍的人是越来越多,甚至已经到供过于求了.今年,找过工作人可能会更深刻地体会到今年的就业形势不容乐观,加之,培训机构一火车地向用人单位输送iOS开发人员,打破了生态圈的动态平衡.矫情一下,言归正传,我奉献一下,为iOS应聘者梳理一下面试题,希望能助一臂之力! OC的理解与特性 OC作为一门面向对象的语言,自然具有面向对象的语言特性:封装.继承.多态.它既具有静态语言的特性(…
1.怎样追踪app崩溃率.怎样解决线上闪退 当iOS设备上的App应用闪退时.操作系统会生成一个crash日志.保存在设备上.crash日志上有非常多实用的信息,比方每个正在运行线程的完整堆栈跟踪信息和内存映像,这样就能够通过解析这些信息进而定位crash发生时的代码逻辑,从而找到App闪退的原因. 通常来说,crash产生来源于两种问题:违反iOS系统规则导致的crash和App代码逻辑BUG导致的crash,以下分别对他们进行分析. 违反iOS系统规则产生crash的三种类型 (1) 内存报…
以下内容是在ios6模拟器运行成功的,或者与我自己的开发环境有关系. 1.强制转屏,不过不推荐,是私有方法 //    if ([[UIDevice currentDevice] respondsToSelector:@selector(setOrientation:)]) { //        [[UIDevice currentDevice] performSelector:@selector(setOrientation:) //                            …
1.自动布局拉伸和压缩优先级 Autolayout中每个约束都有一个优先级,优先级的范围是1~1000.创建一个约束,默认的优先级最高是1000. Content Hugging Priority:该优先级表示一个控件抗被拉伸的优先级.游戏那几越高,越不容易被拉伸,默认是250. Content Compression Resistance Priority:该优先级和上面那个优先级相对应,表示一个控件抗压缩的优先级.优先级越高,越不容易被压缩,默认是750. 应用: //配置 lab 内容多行…
1.宏定义 #define  #   ## a. 后面一个#是转成字符串 b. 后面## 是连接的作用 2. __attribute__ 常用的 __attribute__(( constructor/destructor )) 若函数被设定为constructor属性,则该函数会在+load()后, main()函数执行之前被自动的执行. 若函数被设定为destructor属性,则该函数会在 main()函数执行之后被自动的执行. 更多了解:https://www.jianshu.com/p/…
1.监测网络状态: - (void)checkNetwork { __block NSString *tips; _reachiabilityManager = [AFNetworkReachabilityManager manager]; [_reachiabilityManager setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) { switch (status) { :{ tips = @"未知网…
记录一些常用和不常用的iOS知识点,防止遗忘丢失.(来源为收集自己项目中用到的或者整理看到博客中的知识点),如有错误,欢迎大家批评指正:如有好的知识点,也欢迎大家联系我,添加上去.谢谢! 一.调用代码使APP进入后台,达到点击Home键的效果.(私有API) [[UIApplication sharedApplication] performSelector:@selector(suspend)]; suspend的英文意思有:暂停; 悬; 挂; 延缓; 二.带有中文的URL处理. 大概举个例子…
iOS知识点整理-提示器 http://www.jianshu.com/p/ac7e13d36e32 iOS知识点整理-RunLoop http://www.jianshu.com/p/e4fc6aceec49 iOS控件之UIButton http://www.jianshu.com/p/bbd6ca344ee4 iOS控件之UILabel(一) 基本篇 http://www.jianshu.com/p/1cce5e5219ea iOS控件之UILabel(二)富文本篇 http://www.…
IOS面试攻略(1.0) 2013-10-13 20:58:09|  分类: IOS面试 |  标签:ios知识点总汇  ios面试  |举报|字号 订阅     来自:伊甸网 @ 看到这个关键字,我们就应该想到,这是Object-C对C语言的扩展,例如@interface XXX. @interface 声明类 @implementation 实现类 @protocol 声明协议 @optional 与@protocol配合使用,说明协议中的某个或者某几个方法可以不实现 @required 与…
[原创]UITableViewCell 高度计算从混沌初始到天地交泰 本文主要基予iOS UITableViewCell 高度自适应计算问题展开陈述,废话少说直入正题: UITableView控件可能是iOS中大家最常用的控件了(滚动视图.cell重用.卡顿优化),今天要讨论的不是这些高大上的话题,今天的话题只是cell高度的计算. * 传统frame布局下UITableViewCell 高度计算 * AutoLayout下UITableViewCell高度计算(iOS6.7) * UITabl…
一般用富文本实现多种花样的Label文字,下图是利用UILabel分类快速创建的多彩多样lable文字,快速简单,自定义性强,更重要的是无代码污染,特别适合轻量级使用 https://github.com/joaoffcosta/UILabel-FormattedText 在我写这篇博客的第二天,作者就把代码全部改成swift了....…
今天在查看苹果接口文档时,突然对于接口的声明知识点比较感兴趣,再网络找到下面这个比较不错的文章,记录一下并分享: 如你所知,已废弃(Deprecated)的API指的是那些已经过时的并且在将来某个时间最终会被移除掉的方法或类.通常,苹果在引入一个更优秀的API后就会把原来的API给废弃掉.因为,新引入的API通常意味着可以更好的发挥新硬件或操作系统的性能,或者可以使用一些在构建原有API时根本还没有的语言特性(e.g. blocks). 每当苹果添加新方法的时候,他们都会在方法声明的后面用一个很…
前言,IOS是基于UNIX的,用C/C+/OC直通系统底层,不想android有个jvm. 首先还是系统架构的分层架构 1.核心操作系统层 Core OS,就是内存管理.文件系统.电源管理等 2.核心服务层 Core Services,包含地址本,像集合.线程.网络.文件.数据库访问等都在这里,因为foundation就在这 3.媒体层 Media,音频.视频.图形绘制及动画等 4.可触摸层 Cocoa Touch,这个最主要可视化组件都在这里,oc开发大多也在这,UIKit就在这 5.应用程序…
iOS中关于KVC与KVO知识点 iOS中关于KVC与KVO知识点  一.简介 KVC/KVO是观察者模式的一种实现,在Cocoa中是以被万物之源NSObject类实现的NSKeyValueCoding/NSKeyValueObserving非正式协议的形式被定义为基础框架的一部分.从协议的角度来说,KVC/KVO本质上是定义了一套让我们去遵守和实现的方法.当然,KVC/KVO实现的根本是Objective-C的动态性和runtime,这在后文的原理部分会有详述.另外,KVC/KVO机制离不开访…
iOS 常见知识点(一):Runtime iOS 常见知识点(二):RunLoop 锁是最常用的同步工具.一段代码段在同一个时间只能允许被有限个线程访问,比如一个线程 A 进入需要保护代码之前添加简单的互斥锁,另一个线程 B 就无法访问,只有等待前一个线程 A 执行完被保护的代码后解锁,B 线程才能访问被保护代码. iOS 中的八大锁 NSLock @protocol NSLocking - (void)lock; - (void)unlock; @end @interface NSLock :…
UIImage是iOS中层级比较高的一个用来加载和绘制图像的一个类,更底层的类还有 CGImage,以及iOS5.0以后新增加的CIImage.今天我们主要聊一聊UIImage的三个属性: imageOrientation, size, scale,几个初始化的方法: imageNamed,imageWithContentsOfFile,以及绘制Image的几个draw开头的方法. AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验 UIImage是iOS中层级比较高的一…
在iOS学习和开发过程中,经常会遇到一些很小的知识点和问题,一两句话就可以解释清楚了,这样的知识点写一篇随笔又没有必要,但是又想mark一下,以备不时之需,所以就有了本文.后面遇到一些小的知识点会不断更新和整理. Question 1: 在iOS开发中经常会遇到定义属性时有getter赋值语句,在UIView.h文件中有下面这么一行代码,这里的getter表示什么意思呢,又有什么作用呢? //在UIView.h文件中有这么一行代码 @property(nonatomic,getter=isUse…
1 .全局变量,变量名前加下划线.和系统一致. 2 . nil指针为空   @“”字符串为空 (内容为空)       ==  判断内存地址   基本变量    对于一些基本类型 可以使用==来判断,但对于指针类型,使用==则判断的是指针保存的内容地址是否相等,而不是判断内存地址下的内容是否相等(应该通过方法来判断) 多个指针可以这向同一个对象 3 .判断两个字符串是否相等用 isEqualToString:@“” 4.警告框      不需要设置fram      不需要addSubview …
ios的一些知识点 一 非ARC的内存管理情况 1-autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象.当用户的代码运行告一段落,开始等待用户的操作,自动释放池就会被释放掉(调用dealloc),池中的对象都会收到一个release,有可能会因此被销毁. 2-成员属性: readonly:不指定readonly,默认合成getter和setter方法.外界毫不关心的成员,则不要设置任何属性,这样封装能增加代码的独立性和安全性.相…