自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (1)
  • 收藏
  • 关注

原创 自定义UISegmentedControl

系统自带的UISegmentedControl有很多的限制 ,有时候为了满足自己的需求可能需要自己定制,本文就是我在做需求的时候自己定义的一个UISegmentedControl,支持很竖屏 ,使用Masonry自动布局.效果如下:1 竖屏2 横屏整个控件是继承自 UIView 的 从类方法中传入的数组的个数根据数组的个数新建相同个数的 button ,button 的 title 是相应的数组中的

2016-09-17 15:56:50 539

原创 mas_makeConstraints &&  mas_remakeConstraints && mas_updateConstraints 用法与注意事项

1 mas_makeConstraints 只负责新增约束,Autolayout 不能同时存在两条针对于同一对象约束 否则会报错 注意:在添加约束之前一定要添加到view( [testView addSubview:self.view])上 否则会报错[testView mas_makeConstraints:^(MASConstraintMaker *make) {

2016-07-09 23:16:38 15468

原创 纯代码写CollectionViewCell的复用问题

需求:     需要的Button 的个数不一定 Button上显示的字符串的长度不一定,Button上显示的字符串和Button的个数全部从服务器下发 ,当Button的个数在屏幕上展示不下的时候要可以左右滑动 以展示更多的Button方案:     综合以上因素 我选择利用CollectionView实现此功能.其中遇到几个问题:首先说明: cell中有一个La

2016-02-16 15:55:32 8582

原创 iOS中跳转到系统应用的问题

需求是:     当系统的定位服务关闭时如果打开软件的定位按钮需要弹出警告框 ,提示用户软件需要其设备打开定位服务,点击” 设置”按钮跳转到系统的 开启定位的界面。一开始用的是NSURL *url = [NSURLURLWithString:@"prefs:root=LOCATION_SERVICES"];           if ([[UIApplicationsh

2016-01-13 19:40:03 521

转载 nonatomic, retain,weak,strong用法详解

strong与weak是由ARC新引入的对象变量属性ARC引入了新的对象的新生命周期限定,即零弱引用。如果零弱引用指向的对象被deallocated的话,零弱引用的对象会被自动设置为nil。@property(strong) MyClass *myObject;相当于@property(retain) MyClass *myObject;@property(weak

2015-10-27 16:45:05 445

转载 setter和getter方法

原文来自于:http://blog.csdn.net/lonelyroamer/article/details/7665112一、setter和getter的一般写法 setter和getter器可以说是一个类最基本的东西,任何一门面向对象的语言,都又这个概念,C++、java等等。因为setter和getter是对面向对象语言封装的最基本的支持。在Objective-

2015-10-25 21:43:46 1870

转载 iOS开发系列--地图与定位

概览现在很多社交、电商、团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用和导航应用所特有的。的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式。例如你到了一个陌生的地方想要查找附近的酒店、超市等就可以打开软件搜索周边;类似的,还有很多团购软件可以根据你所在的位置自动为你推荐某些商品。总之,目前地图和定位功能已经大量引入到应用开发中。今天就和大家一起看一下

2015-10-10 20:20:12 797

转载 NSSearchPathForDirectoriesInDomains用法

iPhone会为每一个应用程序生成一个私有目录,这个目录位于:/Users/sundfsun2009/Library/Application Support/iPhone Simulator/User/Applications下,并随即生成一个数字字母串作为目录名,在每一次应用程序启动时,这个字母数字串都是不同于上一次。所以通常使用Documents目录进行数据

2015-10-07 10:02:20 330

转载 UICollectionViewLayout

这是博主的WWDC2012笔记系列中的一篇,完整的笔记列表可以参看这里。如果您是首次来到本站,也许您会有兴趣通过RSS,或者通过页面左侧的邮件订阅的方式订阅本站。在上一篇UICollectionView的入门介绍中,大概地对iOS6新加入的强大的UICollectionView进行了一些说明。在这篇博文中,将结合WWDC2012 Session219:Advanced Collecti

2015-09-14 21:05:11 384

转载 UICollectionView详解

什么是UICollectionViewUICollectionView是一种新的数据展示方式,简单来说可以把他理解成多列的UITableView(请一定注意这是UICollectionView的最最简单的形式)。如果你用过iBooks的话,可能你还对书架布局有一定印象:一个虚拟书架上放着你下载和购买的各类图书,整齐排列。其实这就是一个UICollectionView的表现形式,或者iPad

2015-09-14 20:48:46 506

转载 TextKit学习 通过boundingRectWithSize:options:attributes:context:计算文本尺寸

之前用Text Kit写Reader的时候,在分页时要计算一段文本的尺寸大小,之前使用了NSString类的sizeWithFont:constrainedToSize:lineBreakMode:方法,但是该方法已经被iOS7 Deprecated了,而iOS7新出了一个boudingRectWithSize:options:attributes:context方法来代替:很

2015-09-13 22:16:00 480

转载 Multithreading and Grand Central Dispatch on iOS for Beginners Tutorial

Have you ever written an app where you tried to do something, and there was a long pause while the UI was unresponsive?This is usually a sign that your app needs multithreading!In this tutorial, y

2015-09-12 21:37:43 736

转载 NSOperationQueue、NSOperation理解

1.NSThread与NSRunLoop:   一个单独的app应用就是一个进程,里面起码包含有一个主线程(UI线程),并可以创建多个子线程   每个thread中默认会有一个runLoop对象,主线程的runLoop对象是运行着的,用户自己创建的子线程runLoop对象默认是没有启动的。   如果新开的子线程只是为了完成一个耗时的任务,那么不用启动runLoop循环,如果需要子线

2015-09-11 22:18:23 512

转载 CoreData之二 NSFetchedResultsControll

原文链接:http://blog.sina.com.cn/s/blog_813314c90100rwaz.html 引子:NSFetchedResultsController和UITableView集成起来处理数据具有强大的灵活性。首先得到的好处是不需要将数据记录进行分页,不然,按照传统的做法,需要先查询出总的记录,然后再从纪录里面过滤,这样会进行两次操作,对内存消耗很大,处理

2015-09-10 21:53:43 502

转载 coreData

原文链接:http://www.cnblogs.com/uvsjoh/archive/2012/08/14/2637911.htmlCoreData提供了一种简便的对象持久化管理方法,使你可以不用关心数据的存储,只需要关心对象的增加、删除、更改、读写。基本概念 托管对象(managed object)一个托管对象代表你想要保存到数据存储中的一个对象。这在概念上类似于SQL中的一条记录, 并且通常也

2015-09-10 21:12:22 432

转载 UIView管理子视图

UIView提供了很多建立和管理视图的方法。 1、添加视图 insertSubview:atIndex: //放在子视图数组的具体索引位置 insertSubview:aboveSubview: //某个子视图前面 insertSubview:aboveSubview: //某个子视图前面 2、重新排序和删除子视图 [parentVi

2015-08-16 19:44:10 744

原创 代理作用之二:代理回调(反向传值)

/*  员工工作一个月后,让老板来发工资 主动方:员工,制定协议:让遵守协议的对象发钱 被动方:老板,遵守协议,实现协议中的发工资的方法  调用方是遵守协议者,被调用方是制定协议者,制定的协议是让被调用方给调用方传送信息。通知调用方一些事件,或者让调用方做一些事,实现了代理的第二个作用,回调。 在上一篇博文中讲述的是广播站和收音机的例子。广播站是制定协议的一方也是调用的

2015-08-09 17:10:10 517

原创 代理作用之一代理传值:正向传值

**【从生活角度上看代理】 销售经理、人事代理、财务代理 A委托B做一些事情,B就是A的代理,A是主动方,B是被动方 B也可以委托A做一些事情,A就是B 的代理,B是主动方,A是被动方 【丛编程 角度来看】 是对象与对象之间进行通讯的一种方式 【协议与代理】 协议:是oc的语法 代理:不是语法,是一种解决问题的方法,是一种设计模式,在i

2015-08-08 21:43:43 718

转载 Block 原理详解

Block 对象是C语言层面的语法,也是一个运行时特性. 它们很类似与标准的C函数,但是除了可执行的代码,它们还包含了与自动(栈)或托管(堆)的内存所绑定的变量。因此一个block维护了一系列的状态(即数据),在执行时会改变代码的行为。你可以使用blocks编写函数表达式当参数传入API,也可以将其保存下来用于多线程。Blocks在回调中非常有用,因为block不仅包含着回调时需要执行的代码,

2015-08-07 22:34:59 986

原创 字符串

字符串:    1【说明】        1),foundation.h导入了几乎所有的c常用的基本的头文件,离开了它,不能写出oc的代码。        2),foundation.h提供了基本类库:字符串,数组,字典。        3),在程序中可以使用两种类型的字符串:c字符串,oc字符串,如果不加说明的话,默认的就    是oc的字符串。c字符串是双引号括起来的若干字符,

2015-08-07 16:33:45 652

原创 数组:可变数组和不可变数组

1,不可变数组:类:NSArry //对象初始化方法 1> NSArray *arr1 = [[NSArray alloc]initWithObjects:@”one”,@”two”,@”three”,@”four” ,nil]; NSLog(@”%@”,arr1); /*结果:( one, two,

2015-08-07 16:29:40 2312

原创 字典和点语法

一,字典 1,【说明】字典数组不同,字典没有下标没有顺序 1),字典是oc中特有的类型,用于存放oc的对象。 2),字典中存放的对象是没有顺序的。 3),字典中的对象是以【键(key)值(value)对】的形式出现的。 4),键是为了查找值而存在的,是为了能够快速地找到值。 5),任何对像都可以作为建,但是一般常用字符串作为建。

2015-08-07 16:27:13 1194

原创 XML解析

一,XML概述: (Extensible Markup Language) 扩展标记语言,用于标记电子文件,使其具有特定结构的语言。可以用来标记数据、定义数据类型、是一种允许用户对自己的标记余元进行定义的源语言。格式是统一的、是一种跨平台的语言,成为业界公认的标准。 【补充】【HTML(HyperTextMarkupLanguage)超文本标记语言(网页制作)】 二,XML语

2015-08-07 16:23:11 685

原创 JSON解析笔记

JSONif 0/1代码一 重要!!!else代码二endif注意:如果if后面是0的话就执行代码二,如果if后面是1 就执行代码1一,JSON简介: JSON 是一种轻量级的数据交换格式,文件内容类似于oc的字典中的键值对。二,JSON语法: 键值对表示:键名用双引号括起来,冒号后面跟值。

2015-08-07 16:20:36 574

原创 已知字符串中的单词间由单个空格隔开,实现函数,返回字符串s中出现次数最多的单词与次数组成的字符串

/* 传入:@"drink your drink don't drink others drink" 返回:@"drink4" *//* 思路如下: */-(NSString *)mostWordInString:(NSString *)s{    NSMutableArray *muArr = [[NSMutableArray alloc]init];   

2015-08-07 16:17:18 1128

原创 将一个字符串中的字符按照ASCII码从小到大的顺序排序

//  Copyright (c) 2015年 JWC. All rights reserved. 传入:@"Lifeislikeridingabicycletokeepyourblanceyoumustkeepmoving" 返回:@"Laabbcccdeeeeeeeefggiiiiiiikkklllmmnnnoooopprrssttuuuvyyy" */-(NSSt

2015-08-07 16:15:53 16757

原创 把一个有规律的字符串分成一句话,首字母大写其他小写

//  Copyright (c) 2015年 JWC. All rights reserved给定一个字符串,按单词分开,单词是全大写或全小写, 转换时首字母大写,其余全部转换为小写,并用空格隔开(15分) 传入:@"whereTHEREisAwillTHEREisAway" 返回:@"Where there is a will there is a way" */

2015-08-07 16:13:57 1153

原创 解压字符串

/* 传入:@"a10b3Cd5e" 返回:@"aaaaaaaaaabbbCddddde" 提示:次数可能超过10 *//* 1,首先,把字符和源字符串中取出来,存在一个字符串中并且把它的位置上改为‘|’,这一步之后源字符串中剩下|和数字 2,其次,把源字符串根据|分开放在数组当中,这个时候数组中会有空格,也就是连续两个或多个字符处 3,然后,把数组中的空格用1代替

2015-08-07 16:10:49 1169

原创 oc 排序并压缩字符串

排序并压缩字符串 将字符串中的字符串按照ASCII从小到大的顺序排序,然后压缩 压缩策略是将连续出现的字符转换成字符+次数的形式 如传入:@"Lifeislikeridingabicycletokeepyourblanceyoumustkeepmoving" 排序后(5分):@"Laabbcccdeeeeeeeefggiiiiiiikkklllmmnnnoooopprrssttuu

2015-08-07 16:08:40 1300

原创 打印N字形

根据输入的内容打印 //比如 [obj printString:@"12345"];  1   1 2  22 3 3 3 44  4 5   5  */- (void)printString:(NSString *)string{    NSMutableString *muStr = [[NSMutableString alloc]init];

2015-08-07 16:05:11 654

Swifter - Swift 开发者必备 Tips第四版 代码和书籍

Swifter - Swift 开发者必备 Tips第四版 代码和书籍 “Swift 里可以将方法进行柯里化 (Currying),这是也就是把接受多个参数的方法进行一些变形,使其更加灵活的方法。函数式的编程思想贯穿于 Swift 中,而函数的柯里化正是这门语言函数式特点的重要表现。 举个例子,下面的函数简单地将输入的数字加 1: func addOne(num: Int) -> Int { return num + 1 }”

2017-12-29

空空如也

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

TA关注的人

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