UI知识点
爲妳鎻愛
本人热爱IOS开发,希望通过IOS改变自己,改变大家,改变所有人,改变世界
展开
-
双向认证第二步: p.12文件进行ssl双向认证
将上一章创建好的client.p12拖进新建的工程在ViewController.m文件中- (void)viewDidLoad {[super viewDidLoad];// 请求数据NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];NSURLSes原创 2016-07-11 13:59:27 · 2989 阅读 · 0 评论 -
35.UITabBarController(标签视图控制器)
UITabBarController继承于UIViewController===================================================在UITabBarController.m文件中创建6个视图控制器OneViewController *oneVC = [[OneViewController alloc] init];TwoViewController *t原创 2015-11-30 19:43:21 · 364 阅读 · 0 评论 -
36.block循环引用的问题
解决Block循环引用的方法相当于 在block块中 引用计数会被加一加上__block修饰后 有一个引用计数减一的操作ARC状态下 引用__week需要用__block 修饰一下self来解决问题__block SecondViewController *mySelf = self;写block的实现ltview.block = ^void(){[mySelf.navigationControll原创 2015-11-30 20:04:16 · 317 阅读 · 0 评论 -
58.UIView动画第二章(简单)
从一个控制器的View翻转到另一个控制器上的View首先在第一个视图控制器中 ====在第二界面原创 2015-12-15 21:20:02 · 261 阅读 · 0 评论 -
70.UISearchController(搜索栏)
搜索栏的重要性我们就不说了,狼厂就是靠搜索起家的,现在越来越像一匹没有节操的狼,UC浏览器搜索栏现在默认自家的神马搜索,现在不管是社交,O2O还是在线教育等都会有一个搜索栏的实现,不过彼此实现效果是不一样的。iOS中的搜索栏实现起来相对简单一点,网上也有很多参考资料,不过靠谱的不是很多,很多都是iOS 8.0之前的实现,iOS 8.0上的实现貌似很少看到,看了一些老外的代码,使用了一下UISearc原创 2015-12-30 16:10:39 · 521 阅读 · 0 评论 -
69.NSURLSession(音乐下载保存代码演示)
代码演示原创 2015-12-30 15:52:46 · 370 阅读 · 0 评论 -
68.NSURLSession使用说明及后台工作流程分析
NSURLSession是iOS7中新的网络接口,它与咱们熟悉的NSURLConnection是并列的。在程序在前台时,NSURLSession与NSURLConnection可以互为替代工作。注意,如果用户强制将程序关闭,NSURLSession会断掉。NSURLSession提供的功能: 1.通过URL将数据下载到内存 2.通过URL将数据下载到文件系统 3.将数据上传到指定URL 4.转载 2015-12-30 15:11:24 · 330 阅读 · 0 评论 -
57.UIView动画第一章
UIView动画动画的特点:全部都是类方法 直接用类去调用1.UIView 直接去调用的2.block方法步骤:1.开始动画2.——-之间写你要执行的动画3.提交动画 UIView的block方法2D 仿射 (手势的方法)平移和变大 旋转=====原创 2015-12-15 20:55:43 · 261 阅读 · 0 评论 -
54.多线程第一章
进程:正在活动(运行的)一个应用程序 就是 一个进程每一个进程 都至少有1条线程 叫主线程线程:每一个线程 都是独立的 可以执行任务除了主线程以外的 都是子线程子线程 可以有很多个 但是线程是耗费资源的(一般最多不超过5条 注:3条最佳)程序退出后会清空线程的任务主线程操作什么样的任务?UI界面 按钮的点击 屏幕的滚动(一切用户看的见的 都要在主线程当中去操作)比较大的耗时操作 又或者 用户看不见的原创 2015-12-14 21:31:40 · 325 阅读 · 0 评论 -
67.FMDB代码示例
加载App后先展示数据库里有的数据(及时断网也可以有数据可以展示)原创 2015-12-29 19:53:21 · 424 阅读 · 0 评论 -
66.第三方类FMDB(SQL管理数据库)
一、简单说明1.什么是FMDBFMDB是iOS平台的SQLite数据库框架FMDB以OC的方式封装了SQLite的C语言API2.FMDB的优点使用起来更加面向对象,省去了很多麻烦、冗余的C语言代码对比苹果自带的Core Data框架,更加轻量级和灵活提供了多线程安全的数据库操作方法,有效地防止数据混乱3.FMDB的github地址https://github.com/ccgus/fmdb二、核心类原创 2015-12-29 19:41:33 · 415 阅读 · 0 评论 -
55.多线程第二章(常用的开启多线程方法)
常用的开启多线程方法优势:不用程序员 管理 线程的生命周期1.NSOperation 封装了一下GCD的方法 提供OC的语法来使用GCD2.GCD 苹果推荐的 可以最大化的发挥多核CPU 是C语言的函数NSOperation 是一个抽象类NSBlockOperationNSInvocationOperation线程队列(任务中心 执行很多任务)1.串行队列 主线程 相当于 一个串行队列 队列中的任务原创 2015-12-14 21:45:06 · 311 阅读 · 0 评论 -
56.多线程第三章(重点)
重点============================1.并行队列(比较常用) 系统提供了一个全局的并行队列(整个应用都可以使用) 如果不想用 也可以创建一个出来2.串行队列 需要创建一个出来任务:1.同步 不具备开启线程的能力2.异步 具备开启线程的能力分四种情况1.并行 – 异步任务2.并行 – 同步任务3.串行 – 异步任务4.串行 – 同步任务1.并行 – 异步任务 2.并行 – 同原创 2015-12-14 22:18:03 · 308 阅读 · 0 评论 -
65.UIWebView(网址视图)
UIWbeView就是一个可以帮我们打开网站的浏览器页面,我们对这个页面的操作就相当于对我们的浏览器进行操作UIWebView经常使用的3种情况1.整个界面的排版比较复杂,需要很多判断2.整个界面的整体布局改变非常大3.需要访问某个网站的时候==========================UIWebView的加载方式1UIWebView第二种加载方式 遵守< UIWebViewDelegate原创 2015-12-29 09:39:35 · 337 阅读 · 0 评论 -
23.navigationBar导航条
navigationBar—导航条,iOS7之后默认是透明的,iOS7之前默认是不透明的。navigationBar在透明情况,与contentView会重合⼀部分区域。navigationBar在不透明情况,contentView跟在navigationBar的下⾯。navigationBar竖屏下默认⾼度44,横屏下默认⾼度32.==============================设置导原创 2015-11-21 10:20:11 · 330 阅读 · 0 评论 -
24.界面间的传值
第⼆个视图控制器如何获得第⼀个视图控制器的部分信息?例如:第⼆个界⾯中lable显⽰第⼀个界⾯textField中的⽂本UINavigationController以栈的⽅式管理视图控制器。通过push和pop控制跳转UINavigationBar管理⼀组UINavigationItem,UINavigationItem包含了UIBarButtonItem。1.使⽤属性传值解决从前往后传值的问题明确原创 2015-11-21 10:47:28 · 292 阅读 · 0 评论 -
30.自定义UITableViewCell第一章
自定义cell(只要是自定义控件 都这个步骤)1.创建TableViewCell子类2.重写初始化方法3.把要添加的控件 添加cell的显示内容区域 contentView上面4.把系统的cell 替换成 自定义cell 完成步骤1.创建TableViewCell子类@interface MyTableViewCell : UITableViewCell步骤2.重写初始化方法1. - (instan原创 2015-11-24 21:24:35 · 324 阅读 · 0 评论 -
34.UIWebView(做一个简易的浏览器)
UIWebView是iOS sdk中一个最常用的控件。是内置的浏览器控件,我们可以用它来浏览网页、打开文档等等。这篇文章我将使用这个控件,做一个简易的浏览器。创建一个TextField和button 根据TextField输入的网址跳转网页1.设置属性方便使用和遵守UIWebViewDelegate协议@interface RootViewController ()< UIWebViewDelega原创 2015-11-25 19:38:42 · 290 阅读 · 0 评论 -
71.快速集成下拉刷新--MJRefresh
代码类库:刷新控件(RefreshControl)GitHub链接:https://github.com/CoderMJLee/MJRefresh快速集成下拉刷新.1.添加头部控件的方法[self.tableView addHeaderWithTarget:self action:@selector(headerRereshing)];或者[self.tableView addHeaderWithC转载 2015-12-31 19:12:43 · 359 阅读 · 0 评论 -
60.NSNotification通知(换肤)
通知通知模式:⼀一个对象能够给其他任意数量的对象⼲⼴广播信息。对象之间可以没有耦合关系。NSNotification(通知),封装了要⼲⼴广播的信息。 NSNotificationCenter(通知中⼼心),管理注册接收消息对象,⼲⼴广播消息。 observer(观察者),需要监测⼲⼴广播信息的对象,即接收信息的对象。使用方法接收信息对象在通知中⼼心进⾏行注册,包括:信息名称、接收信息时的处理⽅方法原创 2015-12-17 19:47:44 · 296 阅读 · 0 评论 -
双向认证第一步:Mac OS X中Apache开启ssl
##一,首先切换到apache2目录下,创建一个CA文件夹cd /private/etc/apache2/sudo mkdir CAsudo chmod 777 CA二,然后进去CA文件夹cd CA三,创建其它文件mkdir demoCAmkdir demoCA/newcertsmkdir demoCA/privatetouch demoCA/index.txtecho “01” >> demoCA原创 2016-07-11 10:59:14 · 2198 阅读 · 1 评论 -
极光推送demo测试流程,测试过程中可能遇到的问题和解决方法
创建开发证书,创建描述文件,极光推送页面设置,Xcode工程设置,真机测试步骤1:创建开发证书.登陆 https://developer.apple.com进入开发者中心进入创建和描述文件页面.点击App IDs 创建一个app id.进入创建页面以后在App ID Description输入app id 的名称.填入原创 2016-06-24 13:35:39 · 13232 阅读 · 5 评论 -
64. 创建音乐播放管理类
AVFoundation 是一个很大基础库,用来创建基于时间的视听媒体,可以使用它来检查,创建、编辑或媒体文件。也可以输入流从设备和操作视频实时捕捉和回放。详细框架介绍见官网:About AV Foundation。步骤1.创建一个继承于NSObject的类 在.h文件中=== ====步骤2.在.m文件中原创 2015-12-26 21:00:17 · 364 阅读 · 0 评论 -
72.友盟分享快速集成
友盟社会化组件,可以让移动应用快速具备社会化分享、登录、评论、喜欢等功能,并提供实时、全面的社会化数据统计分析服务。 http://dev.umeng.com/social/ios/quick-integration 指南将会手把手教你使用社会化组件SDK,用10分钟为APP增加新浪微博、微信、QQ分享功能。注意:本文示例代码均针对最新版SDK,如果你所用SDK的类名或方法名与此文不符合,请使用转载 2016-01-07 20:12:44 · 621 阅读 · 0 评论 -
42.网络请求POST同步和异步
宏定义地址 和 声明属性Post同步请求异步请求原创 2015-12-05 09:36:39 · 401 阅读 · 0 评论 -
45.KVO(Key-Value-Observer)键值观察者
KVO:(Key-Value-Observer)键值观察者,是观察者设计模式的⼀种具体实现。KVO触发机制:⼀个对象(观察者),监测另⼀对象(被观察者)的某属性是否发⽣变化,若被监测的属性发⽣的更改,会触发观察者的⼀个⽅法(⽅法名固定,类似代理⽅法)KVO使⽤步骤:1、注册观察者(为被观察者指定观察者以及被观察属性)2、实现回调⽅法3、触发回调⽅法(被观察属性发⽣更改)4、移除观察者KVOKVO使⽤原创 2015-12-05 10:35:59 · 458 阅读 · 0 评论 -
40.JSON解析
引入JSONKit文件创建model接收 解析以下文件 设置属性接收解析后的数据@property (nonatomic,retain)NSMutableArray *dataArray;开始解析原创 2015-12-04 22:03:39 · 313 阅读 · 0 评论 -
44.封装类实现异步加载图片
1.首先创建一个继承NSObject的在ImageDownLoader.h文件中在ImageDownLoader.m文件中 在RootViewController.m中原创 2015-12-05 10:18:56 · 352 阅读 · 0 评论 -
46.KVO监测Model图⽚下载
cell图⽚及时显⽰tableView:cellForRowAtIndexPath:会在重⽤的时候,根据Model显⽰image或者placeholderImage。如果tableView并未滑动,此时有图⽚下载完毕,是不会⽴即更新到cell上的。如何及时更新图⽚?KVO监测Model属性tableView:cellForRowAtIndexPath:中,为Model的image属性添加观察者。im原创 2015-12-05 12:00:12 · 441 阅读 · 0 评论 -
37.拖放控件Interface Builder
什么是Interface Builder简称IB,是Mac OS X和iOS平台下⽤于设计和测试⽤户界⾯的应⽤程序。提供了拖放⾯板,可以将控件拖放到屏幕上。xib 和 .nibIB创建.xib⽂件,包括视图布局,以XML格式存储。程序运⾏后,.xib⽂件中的内容编译为.nib⽂件(⼆进制⽂件),存储在⼯程包中。使⽤IB初始化视图控制器创建视图控制器- (id)initWithNibName:(NSS原创 2015-12-04 20:28:32 · 620 阅读 · 0 评论 -
43.异步代理加载图片
加载下面的图片,并且UILable中显示加载进度 以下方法原创 2015-12-05 09:53:02 · 290 阅读 · 0 评论 -
41.网络编程(Get 同步 异步block)
⼀、HTTP协议的概念HTTP协议,Hyper Text Transfer Protocol(超⽂本传输协议)是⽤于从万维⺴服务器传送超⽂本到本地浏览器的传输协议,HTTP是⼀个应⽤层协议,由请求和响应构成,是⼀个标准的客户端服务器模型。了解C/S模式Client和Server常常分别处在相距很远的两台计算机上,Client程序的任务是将⽤户的要求提交给Server程序,再将Server程序返回的结原创 2015-12-04 22:39:58 · 476 阅读 · 0 评论 -
63.侧拉菜单
步骤1.创建一个继承于UIViewController的(这个是侧拉后右边的视图)@interface PKRootRightViewController : UIViewController在PKRootRightViewController.m中 最后在根视图控制器PKRootViewController.m中原创 2015-12-21 21:44:30 · 446 阅读 · 0 评论 -
62.A-B-C-D-E-H 原则
原则 A-B-C-D-E-H思想按照 M-V-C-S-NMVC+STORE+ NETWORKAppDelegate主要存放 appDelegate程序的入口出口,管理程序的声明周期,跟其他应用程序的交互,跟苹果服务器的交互BaseClass.处理整体APP 的风格存放管理 UI 的基类处理自定义的 Tabbar 和 NavBarCodeClass存放自己开发代码按模块划分, 新版(newversi原创 2015-12-21 20:55:06 · 788 阅读 · 0 评论 -
61.简单实用iCarousel(第三方类库)和毛玻璃效果
iCarousel 是一个用来简化在 iOS 上实现旋转木马时的视图切换效果,支持 iPad,提供多种切换效果。内容类似的页面需要并排列出来,供用户选择。iCarousel具有非常酷的3D效果,比如经典的CoverFlow, TimeMachine。另外还具有线性,圆柱状等其它效果。可用于图片选择,书籍选择,网页选择等。最下面一层是毛玻璃效果(添加毛玻璃效果)步骤1.首先创建一个继承于UIImage原创 2015-12-21 20:35:43 · 734 阅读 · 0 评论 -
39.XML数据解析的DOM解析
Dom解析 依靠第三方类库GDataXMLNode(谷歌提供的)GDataXMLNode类 依靠系统的libxml2 来实现使用的时候需要导入libxml2 框架真谛:把所有的节点一次性读取 并转化为树形结构 整体解析(与SAX解析的区别)步骤1.在工程里引入GDataXMLNode.h和GDataXMLNode.m步骤2.在General里的点击下方图片最下面的+号按钮添加libxml2.2tbd原创 2015-12-04 21:45:35 · 270 阅读 · 0 评论 -
38.XML数据解析的SAX解析
XML优点:平台无关性,语言无关性,系统无关性XML在不同的语言里解析方式都是一样的,只不过实现的语法不同而已。基本的解析方式有两种,一种叫SAX,另一种叫DOM。SAX是基于事件流的解析,DOM是基于XML文档树结构的解析.假设我们XML的内容和结构如下:首先创建一个学生的类model创建属性开始解析原创 2015-12-04 21:08:04 · 360 阅读 · 0 评论 -
33.单例对象
单例。单:唯⼀性。例:实例对象。即使⽤某个类创建的对象是程序中唯⼀的实例对象。注:通常每次使⽤alloc创建的是不同的对象。如果⼀个类只能创建⼀个对象,称为单例类。单例类可以是⼯具类,视图类,控制器类。练习在上⼀个练习的基础上,通过单例实现:将RootVC输⼊的字符串,显⽰在secondVC的导航栏上。在RootVC的根视图上,设置输⼊框。定义单例类Mysington,定义NSString类型的属性原创 2015-11-25 19:20:10 · 371 阅读 · 0 评论 -
53.集合视图自定义Cell和自定义表头和表尾
利用UICollectionView 自定义的Cell(UICollectionViewCell)和自定义表头表尾做出如下效果:步骤1.创建一个model接收网络请求的图片数据,这个类继承NSObject步骤2.创建自定义表头header,这个类继承于UICollectionReusableView。在HeaderCollectionReusableView.h文件中在HeaderCollectio原创 2015-12-11 20:09:01 · 1161 阅读 · 0 评论 -
12.响应者链
什么是响应者链由多个响应者对象组成的链。UIResponder.响应者类。iOS中所有能响应事件(触摸、晃动、远程事件)的对象都是响应 者。 系统定义了⼀个抽象的⽗类UIResponder来表⽰响应者。其⼦类都 是响应者。硬件检测到触摸操作,会将信息交给UIApplication,开始检测。 UIApplication -> window -> viewController -> view原创 2015-11-14 19:37:29 · 346 阅读 · 0 评论