iOS开发进阶
iOS进阶及解决iOS开发中遇到的各种问题
中二小苇
机器学习,NLP
展开
-
iOS开发——pch文件添加和使用
添加pch文件Xcode6之后不会自动创建-Prefix.pch文件到你的工程里,所以我们想使用pch文件的话得自己手动导入,下面就介绍下如何手动添加pch文件到工程目录中去。 (1)打开你已经存在的XCODE工程. 选择 File > New > File > iOS > Other > PCH File 然后点击下一步.(2)给你的PCH文件起名字projectName-Prefix.pch.原创 2016-07-22 09:47:44 · 1662 阅读 · 0 评论 -
iOS开发——多线程编程(GCD)
Grand Central Dispatch简介Grand Central Dispatch 简称 GCD 是苹果公司开发的技术,是对于多核编程的较新解决方案。它主要用于优化应用程序以支持多核处理器以及其他对称多处理系统。 GCD 提供了一种很简单的操作方式来实现并行处理。你可以把你要的并发执行的代码放在一个block钟,然后把这个block加入到一个queue当中。 在GCD中为我们需要执行的原创 2016-06-18 10:45:56 · 3723 阅读 · 0 评论 -
iOS开发——CocoaPods安装与使用
之前的博客中介绍了好多的第三方框架,这次介绍一下CocoaPods这个工具。当你开发iOS应用时,会经常使用到很多第三方开源类库,然后我们一般的做法是下载第三方类库,然后拖入我们的项目中,但是如果用的第三方类库很多的时候,我们一个个下载拖入很麻烦,这时候我们就需要CocoaPods来处理这个问题了。CocoaPods的简介CocoaPods项目的源码(https://github.com/Cocoa原创 2016-06-14 16:45:40 · 3394 阅读 · 0 评论 -
iOS开发——布局框架Masonry的介绍与使用
平时代码中的视图经常要用CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat height);来布局,不仅代码繁多不好计算而且屏幕适配也很麻烦,这时候就我推荐使用布局框架Masonry,这样可以优化自己的代码,是布局更加简单和简洁。Masonry is a light-weight layout framework which wraps A原创 2016-06-13 18:55:36 · 3096 阅读 · 0 评论 -
iOS开发——网络请求数据处理
之前博客中介绍了iOS中常用的网络框架AFNetworking,其中常用的POST请求方法如下:AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];NSDictionary *parameters = @{@"foo": @"bar"};[manager POST:@"http://ex原创 2016-06-05 17:54:05 · 5704 阅读 · 0 评论 -
iOS开发——搜索框(UISearchController)
最近自己在写一个APP,其中需要实现搜索框搜索功能,于是乎就想写篇博客介绍下UISearchController和搜索框的实现。 我写的是一个天气预报APP,直接以我APP中的源代码来详细介绍下搜索框的实现。 注:在iOS 8.0以上版本中, 我们可以使用UISearchController来非常方便地在UITableView中添加搜索框. 而在之前版本中, 我们还是必须使用UISearchBa原创 2016-06-03 21:02:19 · 5449 阅读 · 0 评论 -
iOS开发——AFNetworking框架使用详解
AFNetworking is a delightful networking library for iOS and Mac OS X.It’s built on top of the Foundation URL Loading System, extending the powerful high-level networking abstractions built into Cocoa.原创 2016-05-28 21:45:57 · 7378 阅读 · 3 评论 -
iOS开发——SDWebImage框架使用详解
This library provides a category for UIImageView with support for remote images coming from the web. (这个类库提供一个UIImageView类别以支持加载来自网络的远程图片)使用方法(已下代码是框架类README的实例代码)- (UITableViewCell *)tableView:(UITab原创 2016-05-14 21:48:09 · 1088 阅读 · 0 评论 -
iOS开发——新特性界面(UICollectionView)
没一款app在刚下载或者更新之后,app有些特色功能需要向用户传递,这个时候我们就要使用新特新界面,用户刚打开软件能看到各种展示图片,左右滑动还可以切换图片,那么新特性界面是如何实现的呢,下面我就用介绍下用如何代码去实现性特性界面,用的是iOS中的UICollectionView,自定义cell去实现的。CollectionViewCell.h中#import <UIKit/UIKit.h>@int原创 2016-05-13 21:23:03 · 981 阅读 · 0 评论 -
iOS开发——数据库(FMDB框架的使用)
FMDB是iOS开发中常用的sqlite数据库框架,它比苹果自带的Core Data框架,更加轻量级和灵活,下面就介绍下框架的基本使用方法。 FMDB有三个主要类:FMDatabaseFMResultSetFMDatabaseQueue一个FMDatabase对象就是一个sqlite数据库对象,FMDatabase用来执行sql语句的,使用FMDatabase执行查询后的结果集,FMDat原创 2016-05-13 21:16:18 · 910 阅读 · 0 评论 -
iOS开发——抽屉效果实现
抽屉效果的原理:其实就是把两个子控制器添加到一个RootViewController中,将子控制器的view添加到RootViewController的view上,然后改变子控制器view的frame实现抽屉的效果。 下面直接看看我自己写的一个小demo。RootViewController.h//两个子控制器leftView和midView@property(nonatomic,weak)UI原创 2016-04-27 17:31:10 · 2602 阅读 · 0 评论 -
iOS开发——手势识别器(用手势实现图片旋转和缩小放大)
iOS开发中,除了有关触摸的这组方法来控制用户的手指触控外,还可以用UIGestureRecognize的衍生类来进行判断,方便了开发。 UIGestureRecognize的子类类别有以下几种:UITapGestureRecognizer //轻拍识别器UIPinchGestureRecognizer //捏合识别器UIRotationGestureRecognizer //旋转识别器U原创 2016-04-25 21:45:56 · 4611 阅读 · 0 评论 -
iOS开发——单例模式(singleton)解决音乐播放器等开发中问题
开发中很多时候需要一个全局的东西,保证全局仅有一份即可,这个时候单例是最佳的选择。 单例模式:在程序运行过程,一个类只有一个实例,无论如何程序运行过程中只有一份实例。 音乐播放器中就需要这种单例模式,实现每次进播放器界面都是同一份实例。实现MusicPlayerViewController类的单利模式//利用GCD的dispatch_once的方法实现单利模式+ (instancetype)d原创 2016-04-23 21:52:10 · 2546 阅读 · 2 评论 -
iOS开发——block传值
要实现界面之间值得传递,有两种方法,一种是利用代理传值,另一种是利用block传值。 Apple 官方文档中是这样介绍block的,A block is an anonymous inline collection of code,and sometimes also called a “closure”.block是个代码块,但可以将他当做一个对象处理。下面就举个利用block实现界面间的传值。原创 2016-04-21 22:29:27 · 708 阅读 · 0 评论 -
iOS开发——使用代理(Delegate)实现跨界面执行跳转请求
先说说我遇到的问题吧,我自定义了一个UITableViewCell,上面有一个UIButton按钮,我想通过点击这个按钮实现视图跳转,UIButton的点击触发的事件是写在UITableViewCell中的,但视图跳转必须是在UITableViewController中才能实现的。这时候我就想到了通过代理(Delegate)实现这一需求。先创建一个协议继承NSObject,命名为viewDelega原创 2016-04-20 21:56:13 · 2467 阅读 · 1 评论 -
iOS开发——界面跳转方法总结
一、UITableBarController(标签栏控制器)中的界面跳转我是在AppDelegate.m中写的代码,代码如下- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[UIWindow原创 2016-04-19 11:48:54 · 4368 阅读 · 0 评论