自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 iOS对象数组去重

iOS对象数组去重刚接到公司需求,在一个显示数据的列表上,上拉加载更时后台返回的数组有可能出现部分重复,固将获取到的数据对应原数据去重后再添加。用以下代码模拟原数据和新获取数据:NSMutableArray *origin_arr1 = @[].mutableCopy; for (int i = 0; i < 1000; i++) { Person *person = [[Person alloc] init]; person.name = [NS

2021-09-29 16:12:51 1120

原创 最新UISearchBar cancleButton 取消按钮 title设置(swift)

当前使用swift 5。 系统搜索栏自带取消按钮标题为cancle, 想要更改为中文“取消”,找了很多网上方法都不起作用。以下代码可以生效,做个记录: UIBarButtonItem.appearance(whenContainedInInstancesOf: [UISearchBar.self]).title = "取消"...

2019-12-21 12:19:08 819

原创 Flutter 上架APPStore 被拒 卡在空白页

Flutter打包iOS App正确步骤如下:1.所有代码,配置包括版本填好。2.在Xcode之中Product -> Clean3.在Flutter开发工具(VSCode或者Android Studio)中命令行执行flutter clean接着 flutter build ios4.最后Xcode中archive vaildate upload...

2019-09-05 11:22:17 3823

原创 iOS 图片美化 彩色底板算法 灰度算法 美白算法

iOS中对图像进行处理在非特定领域平时的开发中用到的时候不多。所以只是大概做一个了解。图片数据处理首先了解一下jpg和png转换俩个方法 //图片转为PNG图片 NSData *data = UIImagePNGRepresentation(image); UIImage *pngImage = [UIImage imageWithData:data]; //图片转...

2019-04-10 16:26:02 866

原创 复杂页面布局框架IGListKit OC版本Demo

做App的时候,有时会遇到一些比较复杂一点的页面。 用Storyboard肯定是最方便的布局办法,这个时候需要注意一下自动布局各个尺寸的屏幕问题就行。 但是如果页面需要一个后续改动或者说是动态控制的页面(当然动态的页面用Web写更好)。这个时候就给大家介绍一个框架叫做IGListKit。 IGListKit在GitHub上官方的介绍为A data-drivenUI...

2019-03-04 11:22:33 7315

原创 iOS 常用各种锁来模拟卖票功能

很多人遇到过类似这样的业务场景, 例如一共有50张车票要卖,当只有一个售票点时一张一张卖没有问题,但是当有多个售票点时,每次售票需要查询是否还有票,也就是说售票出票这个动作同一时间只能一个地方完成。 于是列举iOS一些常见的锁来实现此功能。1.@synchronized   互斥锁,@synchronized(self)里面的self是锁的标识,一样标识方可互斥@synchronized块会隐式的...

2018-06-22 16:35:15 766

原创 iOS 深入了解自定义对象 深拷贝,多层次深拷贝

关于iOS的深拷贝,浅拷贝已经有很多文章,不必在过多赘述。有关系统常见可变对象和不可变对象的copy 和 mutableCopy网上有很多文章,一张图基本上可以说明那么本文着重要研究的是自定义对象的拷贝问题,特别比如说自定义对象里面有属性可以一、对象持有另一个本类的实例对象,这样形成多层次的持有关系时。例如有类如下其中的bestFriend属性可以持有本类的实例对象,该对象的此属性也有可能持有另一...

2018-06-14 16:39:12 1755

原创 最简单的UIWebView与WKWebView 和JS交互 附加WKWebView 加载进度条 返回上一页 与退出

很多时候加载网页都需要显示进度条,返回上一页和退出功能。很简单的东西,但有时候会忘记,写一个Demo作下记录。1.用UIProgressView控件来作为进度条 CGFloat screenWidth = [UIScreen mainScreen].bounds.size.width; CGFloat screenHeight = [UIScreen mainScreen].boun...

2018-03-22 10:28:28 1932 1

原创 iOS 手势密码锁

iOS各个手势是老生常谈的问题了,最近又重温了一下,然后实现写了一遍。另外大概实现了一个简单的手势密码锁。没有UI切图,效果稍微有点丑 。主要是定义一个专门的UIView子类来实现相关效果UI定义很简单,一个3X3的九宫格,排列九个按钮,设置好它们的属性。大概思路是,循环9次,第i次除以9能得到该按钮在哪行,第i次对9取余能得出按钮在哪列。然后可以计算按钮的frame。 CGFloat he...

2018-03-12 16:14:59 708

原创 AVFoundation iOS播放本地音频 语音识别

AVFoundation是一个很强大的系统库,文档介绍如下:AVFoundation is one of several frameworks that you can use to play and create time-based audiovisual media. It provides an Objective-C interface you use to work on a deta...

2018-03-08 12:01:41 1143

原创 TableView 展开和折叠

最近有一个小伙伴问我关于tableview的展开和折叠问题,相信很多人都写过。 还是自己随便实现了一遍。基本的思路就是,用一个Model类来计算和控制tableview的高度。实现效果:cell内容五行或者不足五行的时候,没有折叠功能,内容超过五行的时候,可以折叠和展开。首先可以根据需求把cell的状态获取到为三个 不可展开、折叠状态和展开状态。 在Model里面可以用

2017-11-06 09:42:20 1924

原创 pch引用其他头文件没有提示信息

PCH的配置方法大家都应该知道了,这里不多赘述。特别是Xcode8会发现在PCH文件里面#import会不提示,根据下图设置Increse Sharing of Precomplied Headers为yes就行了。

2017-04-14 15:55:21 979

原创 iOS获取相册视频文件封面图 选取手机中的音频、视频文件并导出数据。

应项目需求,需要实现本地选取并上传图片、音频和视频文件。 其中选取图片这块有很多开源框架,不再赘述。本文主要是采用iOS自带的类MPMediaPickerController 来实现UIImagePickerController音频、视频文件的选取。 首先需要说明的是,如果需求是需要从语音备忘录里面读取原有录音,那么是较难实现的。我在http://stackoverflow.com/que

2017-03-09 16:17:50 4215

原创 iOS 自定义对象数组排序 自定义对象某属性排序

文章翻译自stackoverflow问题‘How to sort an NSMutableArray with custom objects in it?’原问题链接http://stackoverflow.com/questions/805547/how-to-sort-an-nsmutablearray-with-custom-objects-in-it以下是正文:数组排序我们经常

2016-12-23 15:07:52 3147

原创 (原创)iOS tableview系统左滑删除 左滑置顶 自定义左滑事件功能 输入框弹出

关于左滑删除这块,相信不少朋友都遇到过。UITableView自定一个左滑的按钮可以自定义,但是越来越多的需求左滑时要实现多个功能。iOS8之后系统实现了左滑自定多个实现的功能。很简单,首先需要创建一个UITableView. UITableView *table = [[UITableView alloc] initWithFrame:self.view.bounds style:

2016-12-19 17:23:44 6692

原创 iOS webview,WKWebView长按弹出框UIMenuController添加自定义功能

-先说下背景,`UIMenuController`类基于&lt;UIKit&gt;框架下,是iOS3.0之后发布的,它是一个长按呼出框,自带有复制、剪切、粘贴、全选、删除等等功能。文档里面定义如下图****本次要实现的功能是 在加载了HTML字符串的UIWebView中实现自定义长按呼出框。1.默认情况下,UITextFiled、UITextView、UIWebView这三个类及其子类都有自带的长...

2016-10-27 16:59:10 12317 1

转载 iOS时间那点事 NSCalendar + NSDateComponents

历法能使人类确定每一日再无限的时间中的确切位置并记录历史。日历,历法,一般历法都是遵循固定的规则的,具有周期性。日历都是已知的或可预测的。任何一种具体的历法,首先必须明确规定起始点,即开始计算的年代,这叫“纪元”;以及规定一年的开端,这叫“岁首”。此外,还要规定每年所含的日数,如何划分月份,每月有多少天等等。NSCalendar对世界上现存的常用的历法进行了封装,既提供了不同历法的时间信息,又支持

2016-05-26 14:17:46 1869

转载 使用cocoaPods import导入时没有提示的解决办法

在使用第三方类库时,使用cocoaPods是非常方便的,具体使用方法可以参考:CocoaPods安装和使用教程 的安装使用方法。今天讨论的问题是,我在使用的时候遇到了一些问题:用cocoaPod sinstall完成所需要的第三方类库之后,在要用的地方导入(#import)发现不提示,虽然自己手写之后也可以使用,但是不提示就有写错的风险,况且写着也不方便。我认为是工程中在import时

2016-05-19 17:58:37 313

转载 iOS后台持续播放音乐

之前在App Store上架了一个音乐播放器软件,用的是AVPlayer做的音乐播放器。很多用户反映没有后台播放,最近决定更新一下。注意,重点是持续后台播放,网络歌曲也可以,重点是持续播放,后台播放很简单,但是后台持续播放,则需要做一些处理,申请后台id,才能实现持续播放。1.开启所需要的后台模式:选中Targets-->Capabilities-->BackgroundModes

2016-05-08 11:04:58 799

转载 iOS开发之指定UIView的某几个角为圆角

如果需要将UIView的4个角全部都为圆角,做法相当简单,只需设置其Layer的cornerRadius属性即可(项目需要使用QuartzCore框架)。而若要指定某几个角(小于4)为圆角而别的不变时,这种方法就不好用了。对于这种情况,Stackoverflow上提供了几种解决方案。其中最简单优雅的方案,就是使用UIBezierPath。下面给出一段示例代码。UIView *vie

2016-04-18 14:40:39 421

原创 iOS`UITableView`使用系统多选 全选自定义选中背景色 cell多选

最近做一个项目,要用到UITableView中cell的多选和全选。 上网简单一搜索,发现很多小伙伴对于这块是自己自定义cell且通过代码判断,再去改变UI来实现。很多方法的理论基础基本上都是自己给cell写一个属性来记录其是否未被选中的状态,然后单独用一个字典来装这些状态和对应cell所在的indexPath  每次加载cell再去做判断 如何显示选中与非选中状态UI不同。 就突然记起App

2016-03-18 17:17:12 6328

转载 iOS Xcode, 解决“Could not insert new outlet connection”的问题。

在Xcode中,我们可以在StoryBoard编辑界面或者是xib编辑界面中通过“Control键+拖拽“的方式将某个界面元素和对应的代码文件连接起来,在代码文件中创建outlet。不过,如果你的运气不太好,执行以上操作的过程中你可能会遇到下面这样的错误:Could not insert new outlet connection: Could not find any

2016-03-06 11:35:27 222

转载 iOS的主要框架介绍

框架是一个目录,这个目录包含了共享库,访问共享库里代码的头文件,和其它的图片和声音的资源文件。一个共享库定义的方法或函数可以被应用程序调用。       IOS提供了很多你可以在应用程序里调用的框架。要使用一个框架,需要将它添加到你的项目中,你的项目才可以使用它。许多应用程序都使用了如Foundation、UIKit、和Core Graphics这些框架。根据你为应用程序选择的模版,相关的

2016-02-23 21:07:29 306

转载 Core Graphics 框架学习笔记,以及demo

Core Graphics是基于C的API,可以用于一切绘图操作Core Graphics 和Quartz 2D的区别quartz是一个通用的术语,用于描述在IOS和MAC OS X ZHONG 整个媒体层用到的多种技术 包括图形、动画、音频、适配。Quart 2D 是一组二位绘图和渲染API,Core Graphic会使用到这组API 

2016-02-23 21:00:14 396

转载 Xcode7之后简单的真机测试

Xcode7之前,想要真机调试,必须花99刀购买开发者账号,而且步骤繁琐,需要下载证书。随着Xcode7的推出,大幅度的简化了真机调试的步骤,对ios开发工作者和正在学习ios开发的众多码农们,可以说是个不小的福利。现在,我就详细的向大家介绍一下如何免证书真机调试。  第一步:准备工作(Apple ID,iphone手机,Xcode7)      Apple ID  申请网址:ht

2016-02-21 15:09:51 396

原创 《Effictive Objective-C 2.0》读书摘要(下)

《Effictive Objective-C 2.0》读书摘要(下) 《Effictive Objctive-C》一书(以下简称EOC),为每个iOS开发人员必读之经典。书中所提到的7大板块,52个OC语言编程心得,让我获益颇深。自接触来零零散散看了三四遍,也未曾将书中所述完全领悟。闻有句话叫”好记性,不如烂博客”,固提笔记录一下书中知识点。之后会抽时间再将个人心得与动手实践附上。第5章 内存

2016-02-20 18:58:58 432

原创 《Effictive Objective-C 2.0》读书摘要(上)

《Effictive Objective-C 2.0》读书摘要 《Effictive Objctive-C》一书(以下简称EOC),为每个iOS开发人员必读之经典。书中所提到的7大板块,52个OC语言编程心得,让我获益颇深。自接触来零零散散看了三四遍,也未曾将书中所述完全领悟。闻有句话叫”好记性,不如烂博客”,固提笔记录一下书中知识点。之后会抽时间再将个人心得与动手实践附上。第一章:熟悉Obj

2016-02-20 17:20:14 411

转载 const 与static

static 是c++中非常常用的修饰符,他被用来控制变量的存储方式和可见性,下面我将从 static 修饰符的产生原因、作用谈起,全方面分析static 修饰符的实质。 static 的两大作用:一、控制存储方式:  static被引入以告知编译器,将变量存储在程式的静态存储区而非栈上空间。  1、引出原因:函数内部定义的变量,在程式执行到他的定义处时,编译器为他

2016-02-18 21:07:59 276

转载 iOS8中提示框的使用UIAlertController(UIAlertView和UIActionSheet二合一)

iOS8推出了几个新的“controller”,主要是把类似之前的UIAlertView变成了UIAlertController,这不经意的改变,貌似把我之前理解的“controller”一下子推翻了~但是也无所谓,有新东西不怕,学会使用了就行。接下来会探讨一下这些个新的Controller。 - (void)showOkayCancelAlert { NSStri

2016-01-12 21:03:42 464

转载 通过自定义的URL Scheme启动你的App

原文地址:http://iphonedevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.htmliPhone SDK可以把你的App和一个自定义的URL Scheme绑定。该URL Scheme可用来从浏览器或别的App启动你的App。如何响应从别的App里发给你的URL Sc

2016-01-11 11:34:33 286

转载 UIView的layoutSubviews和drawRect方法何时调用

layoutSubviews方便数据计算,drawRect方便视图重绘。layoutSubviews在以下情况下会被调用:1、init初始化不会触发layoutSubviews。2、addSubview会触发layoutSubviews。3、设置view的Frame会触发layoutSubviews,当然前提是frame的值设置前后发生了变化。4、滚动一个UIScrollVie

2016-01-07 19:51:24 281

转载 NSTimer你真的会用了吗

原帖地址:  http://www.cnblogs.com/smileEvday/archive/2012/12/21/NSTimer.html 看到这个标题,你可能会想NSTimer不就是计时器吗,谁不会用,不就是一个能够定时的完成任务的东西吗?  我想说你知道NSTimer会retain你添加调用方法的对象吗?你知道NSTimer是要加到runloop中才会起作用吗?你

2015-12-22 19:15:46 226

转载 vi命令汇总

vi方面网上一搜一大堆,这个在我想不起来的时候查阅的多一点,我用的shell是zsh进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第

2015-12-21 19:49:45 597

转载 Xcode7 创建HTTP请求报错

最近在Xcode 7中向服务器发送请求访问JSON数据时, 控制台打印了以下错误信息:Application Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via your a

2015-12-21 19:20:22 430

转载 关于uitableviewcell的accessoryType属性

转载自:http://blog.csdn.net/kmyhy/article/details/6442351使用的话,例如:[cpp] view plaincopycell.accessoryType = UITableViewCellAccessoryNone;//cell没有任何的样式    cell.accessor

2015-12-12 10:29:33 300

原创 switch case语句里面定义对象要加上花括号

今天写一个东西, 突然发现在switch里面不能定义对象,否则会出现Expected expression错误直接上代码:    switch (_refreshMode) {        caseXMYBasicTableViewControllerRefreshModelNone:                        break;        ca

2015-12-09 21:20:33 4021

转载 关于self.view.frame.size.width赋值会出现expression is not assignable 错误

下面的资料来自于:http://segmentfault.com/q/1010000000177216  self.view.frame.size.height = 100f;这样写没法通过编译,编译器会报错"expression is not assignable"原因是,这句话里面的几个点有两种不同的含义。self.view.frame是Obje

2015-12-09 21:17:22 572

转载 为项目编写Readme.MD文件

了解一个项目,恐怕首先都是通过其Readme文件了解信息。如果你以为Readme文件都是随便写写的那你就错了。github,oschina git gitcafe的代码托管平台上的项目的Readme.MD文件都是有其特有的语法的。称之为Markdown语法。基本规则如下:Markdown 语法速查表1 标题与文字格式标题# 这是 H1 ## 这是 H2 ######

2015-12-08 21:04:19 449

转载 内存泄露和内存溢出

内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。memory leak会最终会导致out of memory!内存溢出就是你要求分配的内存超出了系统能给你的,系统不能满足需求,于是产

2015-12-05 09:38:13 387

转载 UIImagePickerController 原帖地址:http://blog.csdn.net/kingsley_cxz/article/details/9157093

1.UIImagePickerController的静态方法:    imagepicker = [[UIImagePickerController alloc]init];    //UIImagePickerController静态方法判断设备是否支持照相机/图片库/相册功能    /*     typedef NS_ENUM(NSInteger, UIImagePicke

2015-12-03 18:35:30 365

空空如也

空空如也

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

TA关注的人

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