自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 iOS8 UISearchViewController搜索功能讲解

在iOS8以前我们实现搜索功能需要用到UISearchbar和UISearchDisplayController, 在iOS8之后呢, UISearchController配合UITableView的使用相比之下简单很多,  需要签订两个代理协议UISearchControllerDelegate, UISearchResultsUpdating.还有一个很重要的属性self.searchVC.a

2015-05-15 08:27:15 6301

原创 博客搬家 -- 将博客从CSDN迁移到hexo上

好久没写博客了,前段时间又忙着找工作,近期有些颓废. 现在又满血复活,逗留了好久,为了提升逼格同时也为了养成良好的写作习惯,记录个人成长路上的点点滴滴, 故而将博客搬家到hexo上:新博客地址.望关注支持,谢谢!

2016-04-18 23:37:19 3214

转载 iOS UItableViewCell的复用机制,原理解答

转自:http://blog.sina.com.cn/s/blog_9c3c519b01016aqu.html今天在看iphone开发秘籍的时候,遇到这个问题,就仔细的深入了一下,通过测试,获取了一些自认为还不错的结论,希望对大家在cell复用方面遇到的一些问题会有所帮助。本篇文章只讲原理,对于如果对cell做界面,不深入讲述。鉴于我的表达能力有限,可能会有我自己清楚,但是却说不清

2016-01-20 11:06:03 1022

原创 iOS 字符串类目,多种与字符串相关的方法。

项目中经常会用到的一些字符串的方法,分享给大家。具体请参看源代码,如果有问题,望指正。https://github.com/Tbwas/NSString-Category

2016-01-18 18:45:52 904

原创 iOS App启动图不显示的解决办法.

1. 正常来说,启动图以及App图标需按照命名规则命名, 但是命名不规范并不影响显示;2. 设置启动图的两种方法:     (1) iOS 8—xcode 6 之后新出LaunchScreen.storyboard(LaunchScreen.xib)来设置启动图; 当系统版本高于iOS8.0默认优先会显示LaunchScreen. 需要在xcode (General里) 两处做如下

2015-12-04 23:40:44 13704

原创 iOS runtime访问/修改私有变量

最近一直在了解runtime,我们知道runtime是运行时,相对于OC来说是比较底层的C语言的消息机制。利用runtime可以做很多事情,在程序运行过程中,动态创建一个类、动态的为类添加属性和方法,还可以访问私有变量和私有方法。下面就看一下利用runtime如何在外部修改某个类的私有变量。      首先创建一个Father类,在ViewController页面里导入Father.h和obj

2015-08-12 14:53:40 1882 2

原创 iOS app打包 -- 生成ipa测试包 步骤详解

最近有小伙伴问我如何打成ipa包分发给测试人员 , 虽然现在网上的教程很多,但是也很杂, 没有一个比较完整的讲解. 利用工作之余, 就说一下如何生成ipa包?共分为两种方法.第一种方法:    1) 至于配置发布证书和AdHoc描述文件, 就不再累述, 下载下来双击安装即可.(ps: 生成AdHoc描述文件的时候要注意勾选所有的设备, 只有被描述文件包含的设备才能进行相应的测试. 如果是企

2015-08-07 18:37:42 15143

转载 iOS 网络编程socket NSSteam的使用

Socket是一个针对TCP和UDP编程的接口,你可以借助它建立TCP连接等等。而TCP和UDP协议属于传输层 。而http是个应用层的协议,它实际上也建立在TCP协议之上。  (HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机,提供了网络通信的能力。)Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使

2015-08-05 09:10:51 1047 1

转载 iOS 程序crash控制台输入命令调试

转自:http://blog.csdn.net/likendsl/article/details/7576549命令                        解释    break NUM               在指定的行上设置断点。    bt                      显示所有的调用栈帧。该命令可用来显示函数的调用顺序。    c

2015-07-03 14:56:02 890

转载 iOS 异常处理

转自:http://blog.csdn.net/chenyong05314/article/details/7906593Object-C语言的异常处理符号和C++、JAVA相似。再加上使用NSException,NSError或者自定义的类,你可以在你的应用程序里添加强大的错误处理机制。异常处理机制是由这个四个关键字支持的:@try,@catch,@thorw,@finall

2015-07-03 14:37:07 716

原创 iOS 图片处理模糊_毛玻璃效果(董鑫)

iOS 8新增一个类UIVisualEffectView,用来设置毛玻璃效果.UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleExtraLight]];    effectView.fram

2015-07-01 16:04:43 1043

原创 iOS CoreImage图片处理动态渲染(滤镜)

////  ViewController.m//  CoreImageOfDong////  Created by Dong on 15/6/30.//  Copyright (c) 2015年 xindong. All rights reserved.//#import "ViewController.h"#import // 需要导入此库@interfa

2015-06-30 16:37:13 1612

原创 iOS 二维码ZBarSDK类似微信的扫一扫

二维码扫描类似微信的扫一扫, 有横线移动, 还可以打开闪光灯.      需要导入的库: AVFoundation                                CoreMedia.framework                                CoreVideo.framework                                Q

2015-06-30 10:00:35 2840

转载 iOS 运行时runtime控制私有变量以及私有方法

OC是运行时语言,只有在程序运行时,才会去确定对象的类型,并调用类与对象相应的方法。利用runtime机制让我们可以在程序运行时动态修改类、对象中的所有属性、方法,就算是私有方法以及私有属性都是可以动态修改的。本文旨在对runtime的部分特性小试牛刀,更多更全的方法可以参考系统API文件。先看一个非常平常的Father类:123

2015-06-08 10:22:43 2178

原创 iOS 注册本地通知(推送)

注:按Home键让App进入后台运行时,方可查看通知。- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {   // Override point for customization after appl

2015-06-05 15:35:58 1170

原创 iOS 力学动画生成器UIKit Dynamics 之碰撞效果讲解

UIKit Dynamic是iOS7 新增的一组类和方法,可赋予UIView逼真的行为和特征,不需要写动画效果那些繁琐的代码,让开发人员能够轻松地改善应用的用户体验。一共有6个可用于定制UIDynamicAnimator的类,这里先只简单介绍下碰撞的动画效果,即UICollisionBehavior。需要签订一个代理协议:UICollisionBehaviorDelegate。其他效果,后续更新,

2015-06-04 09:25:16 2453

转载 iOS 使用webView实现图文混排

步骤:0.创建两个视图控制体创建一个新项目,然后创建两个控制器LvesViewController和 LvesOriginalController分别添加一个UIWebView到self.view上。 1.去除webView滚动时,上下的白边。- (void)clearWebViewBackground:(UIWebView *)webView{ UI

2015-05-28 16:21:14 2095

原创 iOS 数据加密MD5

使用方法:直接调用MD5即可下载地址:https://github.com/Tbwas/MD5

2015-05-27 14:01:12 783

原创 iOS 网络请求(AFNetworking)失败的错误码分析

NSError codes in the Cocoa error domain.enum { NSFileNoSuchFileError = 4, NSFileLockingError = 255, NSFileReadUnknownError = 256, NSFileReadNoPermissionError = 257, NSFileReadInvalidF

2015-05-27 09:46:38 19209

转载 iOS 正则表达详解

一、什么是正则表达式  正则表达式,又称正规表示法,是对字符串操作的一种逻辑公式。正则表达式可以检测给定的字符串是否符合我们定义的逻辑,也可以从字符串中获取我们想要的特定部分。它可以迅速地用极简单的方式达到字符串的复杂控制。 二、正则表达式的语法  看一个过滤纯数字的例子- (BOOL)validateNumber:(NSString *) textString

2015-05-27 09:39:51 3768

转载 iOS 实时显示编写UI代码效果

编写iOS应用UI的方式大概有两种,一种是Storyboard/Xib,另一种是手写代码。采用Storyboard/Xib方式组织UI,由于提供可视化的特性,只要从UI库中拖动UI控件,便可以显示结果,极大地提高开发速度。但面临一个问题就是多人协作开发,由于所有的UI都放在同一个Storyboard文件中,使用Git/SVN合并代码就会出现冲突。多人协作开发还不是主要问题,有人提出可以创建多个St

2015-05-25 09:05:09 1211

原创 iOS 开发经常使用的第三方开源类库、组件

1、AFNetworkingAFNetworking 采用 NSURLConnection + NSOperation, 主要方便与服务端 API 进行数据交换, 操作简单, 功能强大, 现在许多人都用它取代 ASIHTTPRequest2、Apple Reachability网络监测,可以参考下这篇文章iOS网络监测如何区分2、3、4G?3、DOU

2015-05-25 09:00:37 943

原创 iOS 绘图(drawrect)图片裁剪的红色框框

随着手指在屏幕上滑会实时显示一个红色框框,可以用来裁剪图片。新建一个UIView类继承于UIView,在里面进行绘图操作。在需要的UIViewController里实现代理方法即可。图片裁剪方法,以后会详细介绍,这里不做讲解。效果图和代码如下://  MyView.h//  头像编辑//  Created by Dong on 15/5/8.//

2015-05-21 13:55:25 1445

转载 iOS 懒加载

懒加载,又称为延迟加载。说的通俗一点,就是在开发中,当程序中需要利用的资源时。在程序启动的时候不加载资源,只有在运行当需要一些资源时,再去加载这些资源。我们知道iOS设备的内存有限,如果在程序在启动后就一次性加载将来会用到的所有资源,那么就有可能会耗尽iOS设备的内存。这些资源例如大量数据,图片,音频等等下面举个例子:1> 定义控件属性,注意:属性必须是strong的,示例

2015-05-19 15:33:56 476

原创 NSString+Check, iOS 判断手机号码格式是否正确

使用方法:新建一个继承于NSString的类,再导入NSString+Check.h头文件,通过判断字符串的属性值(checkPhoneNumInput)YES or NO 即可。//  NSString+Check.h//  ics////  Created by Casystar on 15-4-2.//  Copyright (c) 2015年 dong.

2015-04-02 19:18:48 657

原创 NSString_category 字符串类目

本文来源:借鉴github代码以及他人代码,非网上直接复制粘贴,仅供参考。(1)NSString+PJR.h//  Lib////  Created by Paritosh on 15/05/14./////* All rights reserved.** Redistribution and use in sourc

2015-04-01 13:34:15 841

原创 iOS drawing 绘图简介

重新创建一个UIView类,在实现文件里写draw方法,再在其他视图控制器里引用(MyView)即可。#import "MyView.h"@implementation MyView- (instancetype)initWithFrame:(CGRect)frame{    self = [superinitWithFrame:frame]

2015-03-31 15:14:30 499

原创 UITextField抖动效果

我们登录或者注册的时候一般会输入密码和账号,当用户输入为空需要重新输入的时候,需要给用户一个提示.通常我们会用到UIAlerView,用提示框太俗太老套了,这里我们用一个抖动效果来提示用户重新输入......       请看以下代码:(为了方便广大程序猿们复制繁琐的代码, 请看文章最底部)- (void)shake{    CAKe

2015-03-25 15:39:45 871

原创 CocoaPods - 第三方类库管理工具

当我开发iOS应用程序的时候, 避免不了需要使用第三方类库,比如SDWebImage, AFNetworking,JSONKit等等. 我们知道若想使用这些第三方类库,首先需要从网上下载这些类库, 使用过程中还必须在Xcode里添加相关的库. 而且如果项目中用到的类库如果有更新版本,需要重新下载最新版本的类库添加到工程中....这个是一个非常繁琐麻烦的一件事情.. 那么如何解决这样的问题呢?

2015-03-12 14:50:02 498

原创 CoreData最新讲解

为方便程序猿们的使用,仅用图片来简单介绍core data的基本用法 .......1. 首先创建一个工程 (注意勾选Use Core Data)2.接着在 "工程名 -Prefix.pch"文件里创建实体以及属性3.新建NSManagedObject subclass4. 插入数据 (需要创建实体描述,创建实体,赋值)

2015-03-02 20:59:00 382

原创 视频播放器MPMoviePlayerController,MPMoviePlayerViewController

在iOS中可以使用MPMoviePlayerController或者MPMoviePlayerViewController播放视频,你需要加入MediaPlayer.framework。并且#import支持的格式有:.mov, .mp4, .3gp等等。1、初始化方法   NSString *filePath = [[NSBundle mainBundle] pathForResourc

2015-02-27 15:11:01 745

原创 短信功能

有时候需要在app中添加一个分享的功能,这个功能可以让用户给自己的朋友发一个短信或者邮件。这里,我就只向大家介绍一下短信的功能。短信功能可以用两种方式来调用,一种是在程序外调用,一个是在程序内调用,在介绍之前需要提醒大家:短信功能在模拟器下是无法使用的,只能用真机来做调试。1、程序外调用短信功能  NSURL *numberURL = [NSURL URLWithString:[NSStr

2015-02-25 14:35:43 1238

原创 页面菊花效果

这里介绍一下如何实现最简单的页面菊花加载效果。无需第三方繁琐的代码,从而诠释了真正的“简单粗暴”!    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@”正在拼命加载...” message:nil delegate:nil cancelButtonTitle:nil otherButtonTitles:nil, ni

2015-02-24 21:55:28 460

原创 网络判断

开发Web等网络应用程序的时候,需要确认网络环境,连接情况等信息。如果没有处理它们,是不会通过Apple的审查的。Apple的例程Reachability中介绍了取得/检测网络状态的方法。要在应用程序中使用Reachability需要添加源文件(只需添加Reachability.h和Reachability.m文件)和framework(将SystemConfiguration.framework

2015-02-24 08:55:30 490

原创 UIPickerView和UIDatePicker的创建以及基本使用

1、UIDatePicker 是一个可以用来选择或者设置日期的控件,不过它是像转轮一样的控件,而且是苹果专门为日历做好的控件。2、由于没有xCode所以我就简单写几行代码来向大家介绍一下UIDatePicker控件的基本创建和使用,望见谅。UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,460)];se

2015-02-23 22:27:07 478

原创 加速计(重力感应功能)的使用

一、概述    加速计是用来检测手机受到加速度的大小和方向的,而手机静止的时候只受到重力加速度,所以很多人把加速计功能有叫做重力感应功能。加速计的强项在于测量设备的重力方向。    iPhone提供了内置的加速计,也叫方向感应器,是通过感知特定方向的惯力总量,测量出加速度和重力的,是   iOS很重要的特色功能之一。感应器通过跟踪设备在其X、Y、Z轴上的重力加速度的方向,检测到设备当前的方

2015-02-23 11:15:21 3126

原创 get和post请求数据

今天简单介绍一下系统自带的网络数据请求方法,分为同步和异步的get和post。虽然现在程序猿们都用主流的数据请求工具AFN或者ASI,但是相对于一些简单的数据还是用系统的方法比较方法,至少不用导入相关的库。    一、先将一下同步请求数据(包括get和post)        1)get (对于那种后面直接带参数的网络地址用get请求)         NSString *str =

2015-02-12 19:36:21 474

原创 简介缓存清理方法

大家伙都知道,随着手机使用时间的越来越长,产生的垃圾也就会越来越多,从而会影响手机系统性能和手机运行的流畅度。这时,我们就需要清理手机里的垃圾,而这些垃圾大部分都是一些缓存的一些数据。所谓缓存就是系统在运行应用软件时把一些暂时不需要调用的数据写进缓存区,当应用软件被关闭后这些被写进缓存区的数据可能不会被清理,它们仍然会驻留在缓存区中,此时为了将存储区空出来就需要清除缓存。    以上是本人对于

2015-02-11 22:33:45 867

原创 浅谈关键字static和extern

在我们编程过程中或者是在我们看他人代码的过程中,相信大多数(程序)猿友们都会遇到static和extern。或许遇到static会更多一些,比如创建单例时用到了static;再比如,创建tableview,cell的重用标示符时用到了static等等。那么static到底有什么作用呢?接下来让我们一睹为快,请看下一段。    咱们先来说说static——static通常是用来修饰局部变量的

2015-02-10 20:49:03 385

转载 地图及定位

11.1 iOS定位服务iOS中有三个定位服务组件:   Wifi定位,通过查询一个Wifi路由器的地理位置的信息。比较省电,iPod touch和iPad也可以采用。   蜂窝基站定位,通过移动运用商基站定位。也适合有3G版本的iPod touch和iPad。   GPS卫星定位,通过3-4颗GPS定位位置定位,最为准确,但是耗电量大,不能遮挡。Core

2015-02-07 19:08:50 539

空空如也

空空如也

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

TA关注的人

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