自定义博客皮肤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)
  • 收藏
  • 关注

原创 使用AutoLayout布局适配时,如何提前获得AutoLayout完成适配后的子控件的真实frame

当我们使用AutoLayout做适配时,可能会有这样的需求,就是在想在适配完成前就取得子控件的真实frame,来做一些操作。比如我们想把一个正方形的UIImageView剪成一个圆形,这时候就需要这么做    self.imageView.layer.cornerRadius = self.backIcon1.width / 2;    self.imageView.clipsToBounds

2015-06-19 02:01:19 5163

原创 运行到自定义的AVPlayer时,程序崩在main函数里

如果你第一次使用AVFoundation框架自定义AVPlayer时,也许会遇到这个问题。在我看来这是一个坑,巨大的坑。当时,我是被坑了好些天,一直以为自己哪里写错了,可是程序只是一味得崩停,没有报任何错误。最后还是去万能的stackoverflow上找到了答案,感觉只能意会不能言传,直接附上stackoverflow的地址吧:点击打开链接

2015-06-19 01:03:20 599

原创 iOS音效和音乐播放

在iOS中音频播放从形式上可以分为音效播放和音乐播放。前者主要指的是一些短音频播放,通常作为点缀音频,对于这类音频不需要进行进度、循环等控制。后者指的是一些较长的音频,通常是主音频,对于这些音频的播放通常需要进行精确的控制。在iOS中播放两类音频分别使用AudioToolbox.framework和AVFoundation.framework来完成音效和音乐播放。音效Aud

2015-05-30 07:51:10 2981

转载 Xcode6 模拟器路径

Xcode6发布后,出现了很多的变动,功能性的变动,在这里不进行过多的赘述,在WWDC上苹果已经进行了讲述,网上也有很多文章,这里要介绍的是一些不太容易发现的,但很重要的小地方。         1、Xcode6模拟器路径的变更          在Xcode5和之前的版本中,Xcode的模拟器路径为:/Users/username/Library/Application Support/

2015-04-30 09:23:59 582

原创 连线错误

setValue:forUndefinedKey:]: this class is not key value coding错误原因是:连线出问题了

2015-04-30 08:43:07 655

原创 UIActivityIndicatorView的属性和用法

1.   activityIndicatorViewStyle设置指示器的样式UIActivityIndicatorViewStyleWhiteLargeUIActivityIndicatorViewStyleWhite  (默认样式)UIActivityIndicatorViewStyleGray2.hidesWhenStopped

2015-03-25 18:29:42 1154

原创 iOS中比较时间的方法

在iOS中有时需要算出时间间隔,然后根据不同的结果做不同的操作, 像微博、论坛应用等等:#define knewsTimeFormat @"yyyy:MM:dd:HH:mm:ss" //你要传过来日期的格式#define kLocaleIdentifier @"en_US" // 发布时间- (NSString *)newsTime:(NSString *)newsTimes{

2015-03-10 18:08:11 542

原创 tableview的两个获得重用cell方法的区别

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];和UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath

2015-03-04 00:14:11 486

原创 UIButton里面的文字对齐方法

设置UIButton里面titleLabel上的文字对齐的方法不是用:button.titleLabel.textAlignment = UITextAlignmentCenter;而是直接设置button对象的setContentHorizontalAlignment (水平方向)属性(垂直方向:UIControlContentVerticalAlignment),button.Co

2015-02-26 12:47:51 1033

原创 最新版SDWebImage的使用

第一步,下载SDWebImage,导入工程。github托管地址  https://github.com/rs/SDWebImage第二步,在需要的地方导入头文件#import "UIImageView+WebCache.h"第三步,调用sd_setImageWithURL:方法缓存图片,注意,这就是新版本的新方法,旧方法是  setImageWithURL :  。下面将

2015-02-24 20:00:35 409

原创 UIBezierPath 简单使用

UIBezierPath的好处显而易见。 * 首先它是`OC`语言的,相对于c语言的Core Graphics来说更为平易近人。* 其次它能够使用`ARC`,如果我们直接使用CGPathRef的话,还要自己负责在合适的时候释放。UIBezierPath的使用相当简单,分为三步: * 创建path* 添加路径到path* 将path绘制出来例如我们来画条线:```objc

2015-02-24 14:45:07 530

原创 使用GCD的dispatch_once创建单例

项目中考虑到一些公共方法的封装使用,难免要创建单例模式。一般创建单例模式是重写allocWithZone方法,但在ios 4.0后有更加简单的方式。 就是使用GCD的功能 代码如下: + (instantClass *)sharedNetworkTool {static instantClass *networkTool = nil; static disp

2015-02-24 12:14:31 473

原创 在Xcode 6中遇到UIKit相关类(如CGRect)不存在的问题

当开发者刚从Xcode 5 过渡到Xcode 6时,或许会有些不习惯,但坑会一直在那等着你。    其中最值得一提的是关于pch文件。在Xcode 6中苹果官方建议取消使用pch.h全局文件,以加速编译器的编译速度,建议用户需要引用文件时才去import相应的文件。所以,每当新建一个项目时系统不会自动生成pch.h全局文件,若仍要使用需要自己新建。    正因如此,所以每当

2015-02-22 10:11:01 1469

原创 获取UIView所在的视图控制器(UIViewController)

尽管通过UIView获得UIViewController操作时,或许会与MVC的原则背道而驰,但这样做是可以提高开发效率的,所以建议可以用但尽量少用。    UIView获得UIViewController的方法:       UIViewController* vc = [UIViewController alloc] init;        for (UIView* next

2015-02-20 21:32:49 3645

原创 UIReferenceLibraryViewController的使用(调用系统词典)

在程序中使用苹果的词典来查询词汇,即一些软件的“词典功能”UIReferenceLibraryViewController和MFMessageComposeViewController很相似,提供了最小化配置的系统层viewController,可以直接被present显示。可用需要查找term来进行初始化:    UIReferenceLibraryViewControl

2015-02-20 21:29:33 1887

原创 自定义UIMenuController(以UITabelViewCell为实例)

UIMenuController使用要点:1. Menu所处的View必须实现 – (BOOL)canBecomeFirstResponder, 且返回YES2. Menu所处的View必须实现 – (BOOL)canPerformAction:withSender,并根据需求返回YES或NO3. 使Menu所处的View成为First Responder (becomeFirstRe

2015-02-20 20:38:55 1105

原创 解决方案:clang: error: no such file or directory: '/XXX/..../XXX_Prefix.pch'

当我们下载别人的Demo学习,打开运行后可能会遇到这个问题:clang: error: no such file or directory: '/XXX/..../XXX_Prefix.pch'    这是由于XXX_Prefix.pch的路径改变所引起的。    最简单的解决方案:分别在主工程文件 targets 中的XXX和XXXTests中, 点击 Build Settings

2015-02-17 08:39:16 7564

原创 解决方案:cocoapods提示ld: library not found for -lPods

参考:stackoverflow用上cocoapods来管理依赖后遇到一个问题,编译的时候提示 " objc ld: library not found for -lPods"原来是打开的方式不对,之前一直打开的是.xcodeproj,其实需要打开的是.xcworkspaceApple官方文档:Xcode WorkspaceXcode

2015-02-12 20:39:55 3908

原创 解决方案:执行pod install或pod update卡在Analyzing dependencies

当使用CocoaPods来添加第三方类库,执行pod install或pod update卡在Analyzing dependencies时,原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步命令如下:pod install --verbose --no-repo-update pod update --verbose --no-rep

2015-02-12 19:16:45 3523

转载 NSMutableAttributedString/NSAttributedString 富文本设置

参考:  http://stackoverflow.com/questions/11031623/how-can-i-use-attributedtext-in-uilabel 一、设置UILabel的属性attributedText(NSMutableAttributedString)NSString *testStr = @"测试";UILabel *tes

2015-02-09 04:52:52 841

原创 UIViewContentMode类型及效果

UIViewContentModetypedef enum {    UIViewContentModeScaleToFill,    UIViewContentModeScaleAspectFit,      // contents scaled to fit with fixed aspect. remainder is transparent    UIVie

2015-02-08 12:21:09 593

原创 UILabel上显示过长NSString文本的方式

lineBreakMode:设置标签文字过长时的显示方式label.lineBreakMode = NSLineBreakByCharWrapping;    //以字符为显示单位显示,后面部分省略不显示。 label.lineBreakMode = NSLineBreakByClipping;        //剪切与文本宽度相同的内容长度,后半部分被删除。   la

2015-02-05 23:53:55 2234

原创 判断NSDictionary是否包含某个键key的方法

判断NSDictionary是否包含某个键key的方法      在某些情况下,我们需要通过判断字典里某个键key的存在与否,去执行一些特定的操作,一般常用的方法有两种: 方法一:if ([[dictionary allKeys] containsObject:key) {    // contains key} 方法二:if ([dic

2015-02-05 22:15:34 27513 1

原创 instancetype和id的区别

一、什么是instancetypeinstancetype是clang 3.5开始,clang提供的一个关键字,表示某个方法返回的未知类型的Objective-C对象。我们都知道未知类型的的对象可以用id关键字表示,那为什么还会再有一个instancetype呢?二、关联返回类型(related result types)根据Cocoa的命名规则,满足下述规则的方法:1、类方法中,以all

2015-02-04 21:49:42 442

原创 addSubview和insertSubview 的区别解析

子视图是以栈的方式存放的(先进后出)    每次addsubview时都是在最后面添加,即添加到栈顶。    每次在addsubview前和addsubview后可以用[self.view.subViews count]查看子视图的数量,或者用for(UIView  *view  in self.view.subViews)遍历数组,你就可以看到的子视图是被添加到哪

2015-02-03 18:34:54 598

原创 解决方案:The file * couldn't be opened because you don't have permission to view it

解决方案:The file * couldn't be opened because you don't have permission to view it(1)无缘无故出现“The file * couldn't be opened because you don't have permission to view it”错误信息。解决办法:Window ->

2015-01-31 07:57:15 21001

转载 iOS 开发,工程中混合使用 ARC 和非ARC

【前提知识】ARC:Automatic Reference Counting,自动引用计数在开发 iOS 3 以及之前的版本的项目时我们要自己负责使用引用计数来管理内存,比如要手动 retain、release、autorelease 等,而在其后的版本可以使用 ARC,让系统自己管理内存。【问题】在项目开发过程中我们通常会用到第三方提供的源代码,麻烦的是有些开源项目用的是 A

2015-01-30 21:52:26 596

转载 CocoaPods详解之----使用篇

CocoaPods详解之----使用篇作者:wangzz原文地址:http://blog.csdn.net/wzzvictory/article/details/18737437转载请注明出处如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号wangzzstrive来支持我,谢谢!一、什么是CocoaPods1、为什么需要Coco

2015-01-30 20:53:58 447

空空如也

空空如也

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

TA关注的人

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