自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 iOS 新手引导页面

最近公司让添加新手引导界面,在网上没找到合适的三方库,索性自己写了一个,效果图如下,使用最简单的控件所写,简单易用易拓展,希望大家能够喜欢源码链接如下 ,欢迎下载mark点击打开链接

2016-02-25 10:28:36 1997

原创 iOS 获取用户定位权限提示框闪现

最近一个朋友在开发中遇到了一个奇怪的现象,他的App 需要获取用户位置,为了方便,给 CLLocationManager 单独封装到了一个类,然后代理和协议也在这个类里面实现,其他类需要获取地理位置的时候给调用一下提供的方法,我们都知道,获取用户地理位置 是需要用户给予权限的,但是这样写就遇到了一个问题,是否允许获取权限的 提示框在App启动之后 不到1 秒钟 就自动消失了,用户根本来不及操作

2016-01-22 09:14:56 2585

原创 iOS UITableViewCell 展开实现

最近遇到了好几个项目中需要实现UITableViewCell 点击按钮之后 展开的 需求。针对这种需求 ,一般我使用下面这种解决方法:自定义cell ,点击按钮之前 ,返回一个高度,点击之后返回另一个高度,这个过程中需要一个计算size 的过程,不说了上代码。最终实现的效果: 我们的UITableViewCell 分为两部分,一个是固定的部分 在cell 的 上部,

2016-01-16 15:31:24 1030

原创 iOS 视图上移20个像素 问题

前一段项目中遇到了这个问题,后来发现是Appdelegate 中  Window 的 根视图设置的时候没有添加UINavigationController,添加了之后,该问题就应声而解了。但是内部原理正在研究。

2016-01-16 15:29:14 1253

原创 同步 异步 串行 并行

慢慢写吧

2015-11-09 17:47:12 292

原创 iOS 自定义加载等待动画

一般来说,我们的项目中请求网络数据是一个比较耗时的操作,在请求的过程中如果给用户只展示空白的页面或者默认的页面,难免显得有些单调,这个时候我们可以添加一个指示动画,开始请求的时候运行动画,数据请求下来了停止动画,这样用户体验会好一些。下面开始自定义我们自己的加载指示动画。做好之后的效果图如下使用Xcode新建一个工程 ,我们选择singleView,给工程取名字我这边叫MYLoad

2015-11-02 14:08:39 7831

翻译 Core Data from Scratch 翻译第一篇:Core Data Stack

最近项目中使用Core Data的时候,Entities 相互关联的时候出现了Warmning,网上发现了一个国外大牛详细理解CoreData的系列文章,讲解很透彻,在此翻译一下,原文链接如下:http://code.tutsplus.com/tutorials/core-data-from-scratch-core-data-stack--cms-20926。这是系列文章的第一篇。前言

2015-10-19 11:11:59 373

原创 iOS 使用xib创建UITableViewCell的时候引用另外一个UITableViewCell时报错

在我的工程新版本中,需要自定义一个新的cell如图,而我的版本升级之前使用的是这样的cell为了减少工作量,我决定使用之前的 cell 去掉背景之后直接放到新的 cell 上面,这样的话,我们创建的model,和一系列方法就能在新的cell中进行调用,省了不少事,但是问题出现了,但我运行程序的时候就会报错,如下 UITableview Cell exceptio

2015-09-30 09:27:51 1309

原创 iOS StoryBoard 使用UIGestureRecognizer

StoryBoard使用UIGestureRecognizer还是非常方便的,直接上图吧打开storyboard如下图选择控件栏输入gest 就会出现所有能够使用的手势如下图选择我们需要的手势,拖进viewcontroller里面,在右边这个控件栏中点击鼠标右键,代理设置为当前控制器,然后拉出来一个selector 如下,记住 typ

2015-09-23 15:58:15 1315

原创 iOS 字典是否相等

OC 中字典是没有顺序的键值对,那么,如果两个字典 中存储的键值对是一样的,只是顺序不一样,那么他们两个是否相等呢?为了验证这个问题,我简单写了一下代码如下、结果是相等的,对于可变字典和不可变字典都是一样的。那么对于数组来说呢?通过同样的实验,我们得到数组是不相等的,集合是相等的。

2015-09-21 12:30:43 5645

原创 iOS Xcode7 修改了info.plist 也不能联网问题

今天把Xcode 升级到了7,手机也升级到了iOS 9.测试的时候显示不能联网,这当然是iOS9推出的ATS(App Transport Security)的问题。于是按照教程修改程序的plist问题件但是很奇怪,我修改之后还是不能联网,这让我好郁闷,完全是按照官方文档修改的啊,但是为什么就是不能请求数据呢,我琢磨了半天,难道我写错plist文件了吗。我在项目中搜索info.plist 竟

2015-09-18 14:34:42 1348

原创 iOS 中的几个版本号问题

好吧,说一个非常基础的问题,对于刚开始接触iOS 的同学可能有些迷糊,如下:iOS 7、8、9,这里说的是苹果手机操作系统的版本号,目前最新版是iOS9.每个版本都会带来一些创新特性。Xcode 4 、5 、6、7,这里说的是苹果发开工具Xcode 的版本号,目前最新的是Xcode beta 7.1 。正式版是Xocde 7. beta 是测试版。OS X 10.2  这里说的

2015-09-18 13:42:42 560

原创 iOS 一个控件无法显示出来的原因

好吧,让我们简单说一下当一个空间无法显示出来的时候,我们应该如何下手。1、确保你的父视图能够显示出来,最简单的办法就是给这个父视图一个明显的背景颜色。2、确保你的控件的fram坐标是相对于上面的父视图(这一点是最常出错的地方,最简单的验证方法是打印控件的坐标)。3、确保你控件的大小是你想要的(如果宽或者高为0,那么你就看不到你的空间了)。4、确保你的控件没有被你隐藏。5、确保你

2015-09-18 10:50:06 2088

原创 iOS 当前视图控制器view.frame 在viewDidLoad 和 viewWillAppear 中值不一样问题

今天在项目中遇到了一个奇怪的问题.我使用的测试机是iphone5s,在viewDidload中,当我打印 self.view.frame.size.height 显示是548 ,而不是我们预想的568,然后,我在viewwillappear中打印这个self.view.frame.size.height 结果就变成了568,这就导致了我在viewdidload中创建自定义控件的时候坐标需要参照

2015-09-16 18:57:31 4000

原创 iOS 深copy 浅copy

面试中基本上都会问到的一个问题就是深浅copy的问题。浅拷贝就是只拷贝内存地址不拷贝内容,指向的是同一个内存地址。而深拷贝就是内存地址和具体属性都进行拷贝,完全复制一份新的出来,指向另外一个新的内存地址。对于不可变对象(非集合类),copy 是浅拷贝,mutableCopy 是深拷贝,如一个字符串NSString。而对于一个可变对象(非集合类),copy和mutCopy都是深拷贝。

2015-09-15 18:33:30 336

原创 iOS 表格视图与CoreData配合使用 点击后被点击的cell消失问题

最近的项目中遇到了一个问题,在接口更改之后,我的一个collectionView 再点击事件执行的时候会   navagation  push  出一个详情界面,但是再返回 回来的时候,刚才被点击的那个cell 就不见了,他的位置被下面的cell取代,我再点击cell,然后这个cell 也不见了。我的项目中使用了coreData,我想应该是存取数据的时候出的问题。经过查找,我发现我详情界面使用

2015-09-15 11:19:22 819 1

原创 iOS 软件中所有动画突然不能正常显示(系统自带的动画也成了一闪而过)

今天开发过程中遇见了一个事,我的tableview,在点击了n次之后,突然之间整个软件的动画效果都没有了,变成了一闪而过,目前正在研究怎么回事.经过查阅各方资料,我发现,这可能是一个多线程使用出错的问题,我在我出问题的那个页面找到了使用 GCD 的地方,然后把 他 修改了一下(其实我是直接删除了),然后问题就得到了解决。原文的链接如下,据说这是iOS7  多线程的一个bug。http://

2015-09-01 15:36:25 1042

原创 iOS 让自己代码更好看的一些小技巧

开发过程中,有时候我们自己写完代码之后,都不忍心去看自己写出来的 乐摄 ,原因之一就是我们的代码太难看。这里我总结了一些能够让自己代码更好看的小技巧。不喜勿碰。1.等号对齐如下图,我们可以在竖直方向上使我们的等号对齐,这样看起来是不是美观了那么些。2.星号对齐我们在.m文件中声明私有属性的时候可以把变量名和星号对齐,如下                        对

2015-09-01 14:00:16 532

原创 iOS 简单理解协议代理的执行原理

开发过程中,难免会遇到协议代理,请记住,什么时候 采用协议代理:反响传值的时候。 为什么正向传值的时候不使用协议代理呢?因为正向传值,我们直接就给他传了,用协议代理反而增加了过程的复杂程度。什么是正向传值呢?这里有一个经典的例子:老板让员工买电脑。老板让员工卖电脑,这是正向的,老板让员工买10台电脑。这是 正向传值。老板给员工传了10。员工有个技能(方法),能够实现买 N台电脑。员工用这个

2015-09-01 13:16:38 527

原创 iOS 自定义presentViewController 动画时 出现的问题

项目中用到了抽屉视图,抽屉视图 推出新视图控制器的时候需要使用presentingViewController,新推出来的视图相对独立,有自己的一套内容,现在问题来了,再 这个新视图上 再 presentingViewController 的时候就会出现问题。因为返回的时候 直接返回到了底层控制器,而且不完全是底层控制器。就像A-->B--C,我们在 C上面 dismiss 的时候, 直接 d

2015-08-27 13:53:01 1173 1

原创 iOS 崩溃信息捕获不成功

最近项目开发想要把崩溃信息收集起来,发送到自己的邮箱。在网上 查找了相关资料。只需要一个方法 就可以如下。    我们需要在 appdelegate中- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {}这个

2015-08-27 10:13:13 504

原创 iOS 正则表达式验证是否为正确的手机号

我们在做项目的时候,难免会遇到给手机号发送验证码的情况,这时,我们需要首先判断一下用户输入的手机号是否为正确的手机号,下面是用正则表达式判断是否为正确的手机号 ,BOOL 类型的 isMatch  就是 我们 想要的结果。代码如下:NSString *regex = @"^((1[3-8][0-9])|(147)|(15[^4,\\D])|(18[0,5-9]))\\d{8

2015-08-26 13:37:16 909

原创 iOS 类名修改

这个问题很久之前遇到的了,当时忘记记在哪里了,反正脑袋里面备份了。      创建类的时候难免出现后期需要修改类名的情况,这个功能 在XCode 某个版本的时候添加了,这里我给大家说一下。进入需要改名字的类的.h文件如图在 类名 RAYTeachersAnswerOntimeViewController哪里点击右键,如下看到Rename了吧,点击输入新名

2015-08-25 17:46:49 546

原创 iOS 导航栏TitleView居中的问题

最近在开发中遇到了一个问题,我自定义了一个titleVIew放在navigationBar上面,在iPhone6 和6P上面显示 是 居中的,但是在 5s 和4s 上面显示的时候明显的偏向右边,因为我的titleView 上面有一个lab labText 长度会变化,所以导致我的titleView 显示出现了居中问题。经过查阅多方资料,我了解到,titleVIew 默认情况下 是居中显示的,出

2015-08-25 17:10:15 4003 1

原创 iOS UITableView单元格单击出现延迟,双击正常执行事件问题

最近在开发中遇到了一个问题,我使用的抽屉式图,在抽屉左边视图上面添加了一个UITableView,因为需要一个背景图片,所以我把这个 tableView 的 背景颜色设置成了透明色,添加到另外一个背景透明的UIVIew 上面,然后又在 这个 UIView 上面 添加了一个 HeaderView  ,下面添加了一个  FooterView,如下现在遇到了一个问题,当我点击

2015-08-24 12:06:12 1171

原创 iOS app之间的通讯 相互调用

今天抽空研究了一下,app调用另外一个app,听起来怪牛逼,其实很简单。首先,我们有两个app,那就一个叫app1,另一个叫appB吧,现在的想法是 app1启动之后点击 某个按钮,触发启动appB,好了 开搞。1,在appB里面添加 一条URL types    添加item如图        看到了吗,对,请相信你的眼睛,就是这样,两个string是需要自己 设置,后面要用到,

2015-08-13 13:28:39 353

原创 iOS QQ第三方登录 提示所安装的QQ不是最新版本的问题

这种问题出现在 Xcode6.0以后,原因是 info plist 中缺少了一个 Bundle display name  ,把这一项添加上之后,Value 设置为跟Bundle name 一样就可以了(一般为$(PRODUCT_NAME).

2015-08-12 15:56:39 1322

原创 iOS 打包静态库

打包iOS静态库听起来很牛逼的样子,其实很他娘的简单。楼主使用的是XCode6.41,新建Cocoa Touch Static Library               2,起名并保存    3,创建成功  4,此时的静态库为红色也就是没有打包成功 5,注意 重点来了,一定要用真机,否者不成功  6,真机运行成功,打包完成,不会使用

2015-08-11 18:04:31 560

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除