
iOS开发
文章平均质量分 63
康师傅_攻城狮
闻道有先后,术业有专攻。不耻下问,才是王者风范。技术面前,无年龄大小,无身份地位,还有一点,无男尊女卑
展开
-
Swift 4.0 纯代码实现UITableView
class ViewControllerI: UIViewController,UITableViewDelegate,UITableViewDataSource { var mytableView : UITableView? let testValue:NSString = "这是测试内容\n这是测试内容\n这是测试内容\n这是测试内容\n这是测试内容\n这是测试内容\n这是测试内原创 2018-02-01 17:46:19 · 1754 阅读 · 0 评论 -
iOS开发-url的特殊字符转换
URL特殊字符处理 一般来说我们调用webVIew的时候,只要给webVIew传一个url,在网页里面就可以显示网页信息。但是当我们传的url比较麻烦或者带文字符,带参数的时候我们需要对特殊字符进行转义。我们还可以用遍历,正则等来把特殊字符给替换掉!! 有两种方法: 一,使用NSString的方法: 1. //字符串加百分号转义使用编码 (这个方法会原创 2016-04-11 18:27:40 · 1496 阅读 · 0 评论 -
iOS开发-WebView与JS的交互
WebView与JS的交互分为两种种方式:1.在OC中调用JS 2.在JS中调用OC 网页试用[NSString stringWithFormat:@"http://cn.bing.com"]一.在OC中调用JS直接上代码-(void)webViewDidFinishLoad:(UIWebView *)webView{// NSString *原创 2016-03-28 18:12:36 · 608 阅读 · 0 评论 -
iOS开发-iOS中URL字符串的URLencode与URLdecode
url字符串中具有特殊功能的特殊字符的字符串,或者中文字符,作为参数用GET方式传递时,需要用urlencode处理一下//URLEncode+(NSString*)encodeString:(NSString*)unencodedString{ // CharactersToBeEscaped = @":/?&=;+!@#$()~',*"; // Char原创 2016-03-28 17:35:48 · 2379 阅读 · 1 评论 -
iOS开发-两个APP之间跳转、传值
两个APP之间的跳转是通过[[UIApplication sharedApplication] openURL:url]这种方式来实现的。1.首先设置第一个APP的url地址2.接着设置第二个APP的url地址 3.需要跳转的时候NSString *urlString = [NSString stringWithFormat:@"AppJum原创 2016-04-12 11:43:36 · 2627 阅读 · 0 评论 -
iOS开发 Xcode7 使用NSURLSession发送HTTP请求报错
控制台打印:Application Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your app's Info.plist file.原因是:苹果官方为了安全使用原创 2016-01-15 14:17:50 · 362 阅读 · 0 评论 -
iOS开发- 根据表格点击tableviewCell获取在当前屏幕中的坐标值
在使用 UITableViewCell 的frame属性获取origin得到的坐标是不变的.也就是说如果UITableView初始化完毕后,每个cell的坐标是固定的,x不变,y 随index递增的.经过测试发现,任何一个cell拖拽或则滑动到UITableView的任意相对位置,cell的frame属性都没有改变.那怎样获取UITableViewCell相对原创 2016-04-05 10:46:51 · 3422 阅读 · 0 评论 -
iOS开发-的socket开发基础
iOS的socket开发基础首先让我们通过一张图知道socket在哪里?Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。 TCP和UDP的区别TCP:面向连接、传输可靠(保证数据正确性、保证数据顺序)、用于传输大量数据(流模式)、速度慢,建立连接需要开销较多(时间,系统资源)。UDP:面向非连接、传输不可靠、用于传输少量数据(数据包模式)原创 2016-03-30 10:12:35 · 301 阅读 · 0 评论 -
iOS 开发 消除导航栏黑线
//消除导航栏黑线 [self.navigationController.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault]; [self.navigationController.navigationBar setShadowImage:[UIImage n原创 2015-12-09 15:32:46 · 527 阅读 · 0 评论 -
iOS 解决单击手势与UItableviewCell表格手势冲突
#pragma mark -UIGestureRecognizerDelegate-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{ if ([NSStringFromClass([touch.view class]原创 2015-11-30 13:56:57 · 778 阅读 · 0 评论 -
iOS开发 判断日期是今天,昨天还是明天
判断日期是今天,昨天还是明天 -(NSString *)compareDate:(NSDate *)date{ NSTimeInterval secondsPerDay = 24 * 60 * 60; NSDate *today = [[NSDate alloc] init]; NSDate *tomorrow, *yesterday;原创 2015-12-14 10:20:46 · 2664 阅读 · 0 评论 -
CocoaPods: Pod update/install 出错
――― MARKDOWN TEMPLATE ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――### Report* What did you do?* What did you expect to happen?* What happened instead?#原创 2015-11-12 09:51:28 · 1010 阅读 · 0 评论 -
Xcode更新, 各种插件适配问题
每次Xcode 更新都要对每个插件进行添加UUID的操作,实在太麻烦了,就写了个小程序,只需要运行一下本程序,再重启一下Xcode,之前安装的各种插件就都能工作了,非常方便~123456789101112131415161718原创 2015-10-23 11:38:11 · 392 阅读 · 0 评论 -
iOS开发-UI中懒加载的使用方法
1.懒加载基本懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其getter方法。说的通俗一点,就是在开发中,当程序中需要利用的资源时。在程序启动的时候不加载资源,只有在运行当需要一些资源时,再去加载这些资源。我们知道iOS设备的内存有限,如果在程序在启动后就一次性加载将来会用到的所有资源,那么就有可能会耗尽iOS设备的内存。这些资源例如大量原创 2016-05-16 15:03:29 · 5925 阅读 · 0 评论 -
iOS开发-UITextField 使用全面解析
//初始化textfield并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)]; //设置边框样式,只有设置了才会显示边框样式 text.borderStyle = UITextBorderStyleRoundedRect;原创 2016-05-06 14:26:06 · 669 阅读 · 0 评论 -
iOS开发-Could not find a storyboard named 'Main' in bundle NSBundle
1、删掉工程中main.storyboard 后要删除plist文件中对应的键值,否则会报如下错误: Could not find a storyboard named 'Main' in bundle NSBundle2、删除main.storyboard后,需要在AppDelegate.m中初始化一个window进行使用,否则应用程序没有window可用。self.wi原创 2016-06-13 15:39:10 · 2107 阅读 · 0 评论 -
iOS开发-删除已经配置的类库和移除CocoaPods
引言我们使用CocoaPods非常高效地将一些第三方类库导入到我们的项目中,但是不由得产生一个疑问:如果发现某个类库不适用,甚至是整个CocoaPods我们都不想再在项目中持有,那么我们要怎么把这些东西从项目中清理出去呢?本文介绍的就是如何删除一个或若干个已经在项目中配置好的第三方类库,以及如何将整个CocoaPods从项目中移除(不是在终端中卸载)。删除项目中已经配置的类库1.在已经配好的Coco原创 2017-03-24 15:38:18 · 641 阅读 · 0 评论 -
iOS 播放不了android的amr文件
AMRAMR全称Adaptive Multi-Rate,自适应多速率编码,主要用于移动设备的音频(手机打电话),压缩比比较大,但相对其他的压缩格式质量比较差,由于多用于人声,通话,效果还是很不错的。分类1. AMR: 又称为AMR-NB,相对于下面的WB而言,语音带宽范围:300-3400Hz,8KHz抽样分类2. AMR-WB:AMR WideBand,语音带宽范围: 50-7000Hz 16KH原创 2017-01-22 09:54:34 · 5103 阅读 · 0 评论 -
iOS 开发-AFNetworking Block下载文件保存到沙盒
AFNetworking 2.X * @author Jakey * * @brief 下载文件 * * @param parameters 附加post参数 * @param requestURL 请求地址 * @param savedPath 保存 在磁盘的位置 * @param success 下载成功回调 * @param failure 下原创 2017-02-09 16:12:47 · 5145 阅读 · 0 评论 -
iOS开发—判断NSString是否包含某个字符串
主要用到三种方法来判断:rangeOfString 是否包含hasPrefix 是否在前缀包含hasSuffix 是否在末尾包含//判断字符是否包含某字符串; NSString *string = @"hello,shenzhen,martin"; //字条串是否包含有某字符原创 2016-12-05 16:52:13 · 27205 阅读 · 0 评论 -
iOS 开发-SDWebImage访问HTTPS站点获取图片资源失败解决办法
最简单的粗暴的方法:- (void)sd_setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options;options : SDWebImageAllowInvalidSSLCertificates 直接跳过验证证书就可以啦!原创 2016-11-22 16:04:35 · 2106 阅读 · 2 评论 -
iOS开发-警告收录及科学快速的消除方法
一、详细科学的消除警告现在你维护的项目有多少警告?看着几百条警告觉得心里烦么?你真的觉得警告又不是错误可以完全不管么? 如果你也被这些问题困惑,可以和我一起进行下面的操作。其实大部分的警告都是很好改的,把自己整个项目的警告撸一遍应该也就耗费半小时的时间,一次麻烦带来之后的清净这样不好么?原创 2016-08-10 17:33:51 · 620 阅读 · 0 评论 -
iOS开发-DZNEmptyDataSet的使用
DZNEmptyDataSet是外国友人写的开源项目,github地址(https://github.com/dzenbot/DZNEmptyDataSet),简单介绍下DZNEmptyDataSet的使用方法。 对于iOS开发者来说,UITableView是在开发过程中使用比较多的一个控件。如果UITableView表视图没有数据,页面一片空白,不是一个很好的用户体验。我们都希望在数据源为空的时原创 2016-08-03 10:33:18 · 7468 阅读 · 0 评论 -
iOS开发怎么判断当前页面是push方式进入还是present方式进入
NSArray *viewcontrollers=self.navigationController.viewControllers; if (viewcontrollers.count>1) { if ([viewcontrollers objectAtIndex:viewcontrollers.count-1]==self) { //push方式原创 2016-07-07 10:34:59 · 3182 阅读 · 0 评论 -
iOS开发-数据持久化之plist文件
通过对plist文件的操作对iOS开发中一些数据进行持久化保存。原创 2016-06-21 16:01:36 · 725 阅读 · 0 评论 -
iOS开发-自定义TabBar使用popToRootViewControllerAnimated重叠问题解决
先看下现象吧,如下图: 不仅仅重叠了,而且还把图标给覆盖了。尴尬很郁闷。 折腾了很久,终于找到解决办法了。(该方法更为简单)苹果强大就强大在这里,他们已经预想到了。 所以方法就是:遵循UINavigationController的代理,用代理方法解决该Bug,代码如下: 设置代理:- (void)viewDidLoad{ [super viewDidLoad]; se原创 2016-07-14 14:28:06 · 1153 阅读 · 0 评论 -
iOS开发:SVN出错 Description : The working copy is locked due to a previous error
使用CornerStone工具update最新SVN代码报错:The working copy is locked due to a previous error,不仅无法上传,也无法更新,错误提示被锁。解决方法;在CornerStone找到本地代码工程--右键--点击clean 即可。原创 2016-06-15 10:04:45 · 487 阅读 · 0 评论 -
iOS开发-显示发送时间(几分钟前,几小时前,几天前)
+ (NSString *) compareCurrentTime:(NSString *)str { //把字符串转为NSdate NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];原创 2016-06-30 11:04:03 · 3114 阅读 · 0 评论 -
iOS开发-post请求向服务器发送json格式数据(数组或字典)
1.字典NSMutableDictionary *dicFriends = [[NSMutableDictionary alloc] init];[dicFriends setObject:friends forKey:@"usernames"];NSData *dataFriends = [NSJSONSerialization dataWithJSONObject:dicFri原创 2016-06-30 10:53:10 · 6922 阅读 · 1 评论 -
iOS开发-UITextView的用法及技巧(ios7下光标bug解决方案)
一、新建一个textView ?1234567891011121314151617//初始化UITextView *textView = [[[UITextView alloc] init] auto原创 2015-10-07 15:08:46 · 573 阅读 · 0 评论 -
利用 3D touch 的“Peek and Pop”实现视频预览
iOS9 和 iPhone6s/6s Plus 的发布,比较令人关注的一个新特性就是 3D touch 。效果视频页: http://demo.polyv.net/data/touch.html本案在视频列表的 UITableView 里面,用 3D touch 的 Peek and Pop 实现了点开视频播放的详情 DetailViewController 之前,先做个视频预览。原创 2015-10-20 14:47:59 · 387 阅读 · 0 评论 -
iOS开发-MJRefresh 上下拉刷新快速集成
在ios7之前,一直在使用开源的EGO库。但是,在使用过程中发现,普遍封装得过于复杂、耦合性强,不利于集成到自己的项目中。另外,在ios7之后,一些原有的下拉刷新,上拉加载控件表现的就不是那么出色了。除了可能出错外,也不符合扁平化的风格。后来,在code4App上发现了一个大牛上传了一个开源代码, 仅需几行代码就可以为UITableView或者CollectionView加上下拉刷原创 2015-07-14 20:30:58 · 1794 阅读 · 0 评论 -
iOS开发-怎么创建圆角UILabel ?
你可以这样使用UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 200, 36)];label.backgroundColor=[UIColor orangeColor];// 设置圆角label.layer.borderWidth = 1.0f;label.layer.borde原创 2015-07-27 20:29:18 · 382 阅读 · 0 评论 -
object-c的异常处理机制
一直听说iOS有异常处理机制,却从来没有关系过,今天小生就来关心下iOS的异常处理机制吧。以下文字是从Object-C2.0(苹果官方文档)中翻译的,特此注明。异常处理Object-C提供了对于异常处理和线程同步的支持,啊哈,也就是这一章和线程(关于线程同步,大家可以看这里,http://blog.sina.com.cn/s/blog_69081e0原创 2015-07-06 19:49:42 · 418 阅读 · 0 评论 -
IOS中http请求的cookie查看,删除,添加
转至:http://blog.sina.com.cn/s/blog_83fa624c0101e8kb.html一直以为ios的http请求这块很简单应该不支持记录,保存,或者使用cookie,可是想当然归想当然,真用的时候,真研究了一下发现还真强大。经过一番的研究简单说一下我的理解:当你访问一个网站时,不管你愿意或者不愿意,NSURLRequest都会帮你主动记录下来你访问的站原创 2015-07-14 09:15:43 · 767 阅读 · 0 评论 -
使用CocoaPods管理依赖库
这篇内容将介绍Mac和iOS开发中必备的一个依赖库管理工具CocoaPods。 在iOS开发中势必会用到一些第三方依赖库,比如大家都熟悉的ASIHttpRequest、AFNetworking、JSONKit等。使用这些第三方类库能极大的方便项目的开发,但是,集成这些依赖库需要我们手动去配置,例如集成ASIHttpRequest库时除了加入源码以外还需要手动去添加一些系统的fram原创 2015-06-13 18:23:23 · 391 阅读 · 0 评论 -
iOS7导航控制器自定义返回按钮
- (void)viewDidLoad{ [super viewDidLoad]; [self.navigationController.navigationBar setTitleTextAttributes:@{UITextAttributeTextColor: [UIColor redColor],UITextAttributeFon原创 2015-07-10 16:27:10 · 600 阅读 · 0 评论 -
iOS - 常用正则表达式判断邮箱、身份证..是否正确
/邮箱+ (BOOL) validateEmail:(NSString *)email{ NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat原创 2015-06-30 20:18:29 · 371 阅读 · 0 评论 -
iOS 利用正则表达式判断手机号码格式是否合法
支持移动,联通,电信号码。- (BOOL)isMobileNumber:(NSString*)mobileNum{ /** * 手机号码 * 移动:134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188原创 2015-06-30 20:00:50 · 373 阅读 · 0 评论 -
IOS开发---视频录制
今天研究了一下使用app录制视频的功能,感觉还是挺简单的。使用了AVFoundation框架,代码比较死,按步骤调用就行。分享一下今天做的Demo的步骤原创 2015-06-05 14:49:01 · 580 阅读 · 0 评论