iOS开发
文章平均质量分 71
super_man_风清扬
上善若水,人淡如菊!-王威
展开
-
iOS屏幕旋转
若想当前UIViewController进行屏幕旋转控制,则需要重写UITabBarController和UINavigationController中的屏幕旋转的是三个方法,让其响应当前UIViewController的控制。之后就可以在当前ViewController中,重写这三个属性的get方法,来控制页面页面是否支持屏幕旋转,支持的方向以及初始显示方向。1.当需要横屏时,首先把需要横屏的view从superView中移除,添加到keyWindow上,然后做一个旋转90度的动画。原创 2023-07-11 14:40:55 · 1258 阅读 · 0 评论 -
iOS自动化打包
一般自动打包都会专门使用一台 Mac 作为打包机(一般是 Mac Mini,大厂会有专门的打包集群),在打包机上安装 jenkins 用来做自动化构建,关于 jenkins 这块我就不展开讲了,有兴趣的可以去查阅相关资料。测试阶段一般会发生这样的场景,测试拼命的提 Bug,开发拼命的改 Bug,改完重新打包发给测试进行复测,那这个过程中频繁的打包肯定是不可避免的。代码提交后,执行打包目录下的打包脚本,脚本内部需要添加拉取最新代码操作,拉取之后进行打包。jenkins 收到通知后,就会执行配置好的构建任务;原创 2023-02-22 10:33:04 · 763 阅读 · 0 评论 -
Swift Model快速生成
转换网站Model生成。原创 2023-02-20 15:16:52 · 392 阅读 · 0 评论 -
iOS蓝牙开发:蓝牙的连接和数据的读写
停止中心管理设备的扫描动作,要不然在你和已经连接好的外设进行数据沟通时,如果又有一个外设进行广播且符合你的连接条件,那么你的iOS设备也会去连接这个设备(因为iOS BLE4.0是支持一对多连接的),导致数据的混乱。// NSLog(@"characteristic(读取到的): %@, data : %@, value : %@", characteristic, data, value);// 此时由于枚举属性是NS_OPTIONS,所以一个枚举可能对应多个类型,所以判断不能用 = ,而应该用包含&原创 2022-10-27 16:26:26 · 2398 阅读 · 0 评论 -
iOS 15相关改动
1、UINavigationBar、UIToolbar 和 UITabBar 设置颜色,图片,模糊效果,需要使用 UIBarAppearance APIs let barApp = UINavigationBarAppearance() barApp.backgroundEffect = UIBlurEffect(style: .regular) self.navigationController?.navigationBar.scrollEdgeApp...原创 2022-02-18 00:15:00 · 3586 阅读 · 0 评论 -
iOS屏幕旋转技术点及解决方案总结
1.屏幕旋转相关枚举关于屏幕旋转枚举一共有3种:UIInterfaceOrientation, UIInterfaceOrientationMask, UIDeviceOrientation1.1 UIInterfaceOrientation 和 UIDeviceOrientationUIDeviceOrientation是设备当前所处的方向, 它有7个值UIInterfaceOrientation 是屏幕当前所处的方向,它有5个值UIInterfaceOrientatio...原创 2022-02-17 19:59:04 · 4783 阅读 · 0 评论 -
2021年cocoapods 安装
正文自己装过很多次CocoaPod,中间遇到过各种烦人的问题,也促使自己在不断的摸索中学习到了很多,总结一下,供大家学习研究,以下过程经本人新机测试,一路畅通无任何错误(请严格按照下述方法来做),中间有网络不好的可能会下载中断出错,只要从新执行一下命令就行了.CocoaPods简介:CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的、统一管理第三方开源库,为我们节省设置和更新第三方开源库的时间。CocoaPods安装:下面就正原创 2021-04-19 16:25:51 · 406 阅读 · 0 评论 -
浅谈iOS进阶路线
目录1.对本职业看法2.学习方法3.职业规划4.产品公司&外包公司5.做一个负责任的开发者6.iOS开发学习路线7.iOS基础知识点8.iOS中级知识点9.iOS高级知识点10.官方Kit对本职业看法16年我尝试加入各种iOS开发交流群,群里的气氛大致就是:学什么iOS,iOS完了,OC完了.群里大致三种人:谁有企业开发证书,马甲包了解一下,iOS某网课推广.至今,大部分iOS开发群还都是仅供吹水用,偶尔能碰见几个好心人解决一下问题.个人观点个人观点:iOS开.原创 2020-07-28 08:40:51 · 1174 阅读 · 0 评论 -
iOS人脸识别 用苹果api<AVFoundation/AVFoundation.h>
Demo 地址 : https://github.com/wwpeter/FaceID.githttps://img-blog.csdnimg.cn/2020072417iOS 系统自带了人脸识别的方法,而且非常简单。无论针对图片 or 摄像头,都有系统级方法。一、使用 AVCaptureVideoDataOutput 需要实现AVCaptureVideoDataOutputSampleBufferDelegate 的代理方法。这个 delegate 会返回每个视频帧给我们,但不是我们常原创 2020-07-24 17:43:53 · 3305 阅读 · 0 评论 -
ios 轮子库
开源项目iOSBlogAndToolsiOS开发优秀博客和软件推荐CodeHubbrowse and maintain your GitHub repositories on any iOS device!Open-Source iOS Apps开源iOS apps列表弹框FFToastGitHub中最强大的iOS Notification和AlertView框架,没有之一!TYAlertController各种风格的弹框,满足你的各种需求JKPopMenuView简单的弹出菜单MM原创 2020-07-04 16:09:06 · 428 阅读 · 0 评论 -
runtime 运行时得问题
OC消息机制简述==============参考链接: 各种语言都有些传递函数的方法:C语言中可以使用函数指针,C++中有函数引用、仿函数等,OC里有选择器(selector)和block, OC强调的是消息传递,而非方法调用,因此可以对一个对象传递任何消息,而不需要在编译期声名这些消息的处理方法。既然编译期并不能确定方法的地址,那么运行期就需要自行定位了。OC的运行时(runtim原创 2015-12-16 11:35:35 · 676 阅读 · 1 评论 -
iOS 如何SSH key给github
第一步 :首先要检查key是不是已经存在,打开一个终端,并输入以下命令:$ ls -al ~/.ssh如果结果列表中包含以下文件, 则不需要在生成新的KEY, 可以直接使用。id_dsa.pubid_ecdsa.pubid_ed25519.pubid_rsa.pub第二步: 如果不存在, 则需要创建新的Key来使用。输入下面的命令来生成key,原创 2015-12-16 11:37:04 · 705 阅读 · 1 评论 -
图像识别,ocr 技术,有兴趣的可以了解一下
我现在的项目有一个需求,就是把拍照的照片上面的文字识别出来,然后上传到服务器,录入数据,其实图像识别技术是很难的一个技术。(这是我的github里面的地址,关于ocr 的demo~> https://github.com/wwpeter/ocr)OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印原创 2015-12-17 09:17:00 · 11708 阅读 · 2 评论 -
iOS学习路线图
这是iOS学习路线图(王威总结)原创 2015-12-18 10:00:28 · 472 阅读 · 1 评论 -
代码管理 git
一、 Git 命令初识在正式介绍Git命令之前,先介绍一下Git 的基本命令和操作,对Git命令有一个总体的认识示例:从Git 版本库的初始化,通常有两种方式:1)git clone:这是一种较为简单的初始化方式,当你已经有一个远程的Git版本库,只需要在本地克隆一份例如:git clone git://github.com/someone/some_proje原创 2015-12-18 09:40:45 · 390 阅读 · 1 评论 -
Mac 搭建svn服务器
一、创建代码仓库,用来存储客户端所上传的代码我先在/User/apple目录下新建一个svn目录,以后可以在svn目录下创建多个仓库目录打开终端,创建一个mycode仓库,输入指令:svnadmin create /Users/apple/svn/mycode指令执行成功后,会发现硬盘上多了个/Users/apple/svn/mycode目录,目录结构如下:回到顶部原创 2015-12-18 09:10:40 · 495 阅读 · 1 评论 -
IOS后台运行 之 后台播放音乐
OS 4开始引入的multitask,我们可以实现像ipod程序那样在后台播放音频了。如果音频操作是用苹果官方的AVFoundation.framework实现,像用AvAudioPlayer,AvPlayer播放的话,要实现完美的后台音频播放,依据app的功能需要,可能需要实现几个关键的功能。首先,播放音频之前先要设置AVAudioSession模式,通常只用来播放的App可以设为AVAud原创 2016-01-07 10:44:31 · 949 阅读 · 0 评论 -
XMPP
XMPP协议简介 XMPP(Extensible Messageing and Presence Protocol:可扩展消息与存在协议)是目前主流的四种IM(IM:instant messaging,即时消息)协议之一,其他三种分别为:即时信息和空间协议(IMPP)、空间和即时信息协议(PRIM)、针对即时通讯和空间平衡扩充的进程开始协议SIP(SIMPLE)。 在这四种协议中原创 2015-12-24 14:35:12 · 542 阅读 · 0 评论 -
iOS滤镜 图片处理
摘要:本文结合实例详解了OS X和iOS图像处理框架Core Image的使用,如何通过Core Image来创建和使用iOS的内置滤镜,非常适合初学者学习。虽然示例代码是用Swift写的iOS程序,不过实现概念很容易转换到Objective-C和OS X。这篇文章会为初学者介绍一下Core Image,一个OS X和iOS的图像处理框架。如果你想跟着本文中的代码学习,你可以在GitHub原创 2016-04-05 11:53:22 · 1640 阅读 · 0 评论 -
UIDynamic
文顶顶最怕你一生碌碌无为 还安慰自己平凡可贵iOS开发拓展篇—UIDynamic(简单介绍)iOS开发拓展篇—UIDynamic(简单介绍)一、简单介绍1.什么是UIDynamicUIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象如:重力、弹性碰撞等现象 2.物理引擎原创 2016-04-05 16:03:10 · 398 阅读 · 0 评论 -
iOS各大名人的博客
王巍的博客:王巍目前在日本横滨任职于LINE。工作内容主要进行Unity3D开发,8小时之外经常进行iOS/Mac开发。他的陈列柜中已有多款应用,其中番茄工作法工具非常棒。http://onevcat.com池建强的博客: 池建强,70后程序员,Blogger。98年毕业,先后就职于洪恩软件、RocketSofeware和用友软件工程公司(后更名为瑞友科技),现任瑞友科技IT应用研究院副院原创 2016-04-05 16:25:17 · 587 阅读 · 0 评论 -
opencv
opencvOpenCV的全称是:Open Source Computer Vision Library。OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用原创 2016-04-05 17:12:43 · 2105 阅读 · 0 评论 -
音效
音效AudioToolbox.framework是一套基于C语言的框架,使用它来播放音效其本质是将短音频注册到系统声音服务(System Sound Service)。System Sound Service是一种简单、底层的声音播放服务,但是它本身也存在着一些限制:音频播放时间不能超过30s 数据必须是PCM或者IMA4格式 音频文件必须打包成.caf、.aif、.wav中的一种(注原创 2016-04-06 10:16:29 · 457 阅读 · 0 评论 -
iOS ftp 上次
网络上大多数的文件的上传都是通过ASIHttpRequest库以form表单的形式完成的,比较简单,代码逻辑也比较清晰,在此笔者就不赘述了。而今天要跟大家分享的是在iOS端使用ftp的形式进行上传的方式。 由于网上关于在iOS端ftp上传的资料很少,而且刚好笔者也需要用到ftp,因此,便促成了此文的诞生。 一、 简介 在iOS端的ftp上传使用的是C原创 2016-04-08 17:14:47 · 797 阅读 · 0 评论 -
QuartzCore画图框架粗浅使用
任何的视图都集成自UIView,所有的控件都集成自UIController。这里粗浅的记录一下继承自UIView的方法-(void)drawRect:(CGRect)rect也就是QuartzCore画图。总共分三步:1.获得图形上下文CGContextRef context = UIGraphicsGetCurrentContext();2.画图(此间比较详细待后面讲原创 2016-04-26 16:08:29 · 477 阅读 · 0 评论 -
core Animatin 简单
iOS开发CoreAnimation解读之一——初识CoreAnimation核心动画编程一、引言二、初识CoreAnimation三、锚点对几何属性的影响四、Layer与View之间的关系iOS开发CoreAnimation解读之一——初识CoreAnimation核心动画编程一、引言 众所周知,绚丽动画效果是iOS系统的一大特点,通过UIView层封装的动原创 2016-04-26 16:12:10 · 361 阅读 · 0 评论 -
Core Animation 进阶
Core Animation是直接作用在CALayer上的(并非UIView上)非常强大的跨Mac OS X和iOS平台的动画处理API,Core Animation的动画执行过程都是在后台操作的,不会阻塞主线程。核心动画继承结构核心动画继承结构注意:核心动画中的虚类不能使用,而应该使用他们子类中的实类。Core Animation的使用步骤如果是Xcode6之前的原创 2016-04-26 16:13:42 · 399 阅读 · 0 评论 -
iOS重绘机制drawRect
iOS的绘图操作是在UIView类的drawRect方法中完成的,所以如果我们要想在一个UIView中绘图,需要写一个扩展UIView 的类,并重写drawRect方法,在这里进行绘图操作,程序会自动调用此方法进行绘图。下面先说明一下绘图,比如,你想绘制一个方块,你需要写一个类来扩展UIView并在drawRect方法中填入如下代码:- (void)drawRect:(CGRect)r原创 2016-04-26 16:33:24 · 1079 阅读 · 0 评论 -
iOS绘图详解
Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎。它提供了低级别、轻量级、高保真度的2D渲染。该框架可以用于基于路径的绘图、变换、颜色管理、脱屏渲染,模板、渐变、遮蔽、图像数据管理、图像的创建、遮罩以及PDF文档的创建、显示和分析。为了从感官上对这些概念做一个入门的认识,你可以运行一下官方的example code 。 iOS支持两原创 2016-04-26 16:36:44 · 3556 阅读 · 1 评论 -
贝塞尔曲线
使用UIBezierPath类可以创建基于矢量的路径,这个类在UIKit中。此类是Core Graphics框架关于path的一个封装。使用此类可以定义简单的形状,如椭圆或者矩形,或者有多个直线和曲线段组成的形状。 1.Bezier Path 基础 UIBezierPath对象是CGPathRef数据类型的封装。path如果是基于矢量形状的,都用直线和曲线段去创建。我们使用直原创 2016-04-26 16:38:35 · 2861 阅读 · 9 评论 -
iOS开发系列--地图与定位
现在很多社交、电商、团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用和导航应用所特有的。的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式。例如你到了一个陌生的地方想要查找附近的酒店、超市等就可以打开软件搜索周边;类似的,还有很多团购软件可以根据你所在的位置自动为你推荐某些商品。总之,目前地图和定位功能已经大量引入到应用开发中。今天就和大家一起看一下iOS如原创 2016-04-26 17:18:44 · 4730 阅读 · 1 评论 -
iOS开发系列--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook系统服务开发汇总
iOS开发过程中有时候难免会使用iOS内置的一些应用软件和服务,例如QQ通讯录、微信电话本会使用iOS的通讯录,一些第三方软件会在应用内发送短信等。今天将和大家一起学习如何使用系统应用、使用系统服务:调用系统应用使用系统服务短信与邮件通讯录蓝牙社交Game Center应用内购买iCloudPassbook目 录系统应用在开发某些应用时可能希望能够调用iOS原创 2016-04-26 17:38:23 · 5482 阅读 · 6 评论 -
VR 科学技术
VR(科学技术)即VR(Virtual Reality,即虚拟现实,简称VR),是由美国VPL公司创建人拉尼尔(Jaron Lanier)在20世纪80年代初提出的。其具体内涵是:综合利用计算机图形系统和各种现实及控制等接口设备,在计算机上生成的、可交互的三维环境中提供沉浸感觉的技术。其中,计算机生成的、可交互的三维环境称为虚拟环境(即Virtual Environment,简称V原创 2016-04-11 11:52:03 · 1587 阅读 · 0 评论 -
CoreText 初级
本章前言使用 CoreText 技术,我们可以对富文本进行复杂的排版。经过一些简单的扩展,我们还可以实现对于图片,链接的点击效果。CoreText 技术相对于 UIWebView,有着更少的内存占用,以及可以在后台渲染的优点,非常适合用于内容的排版工作。本章我们将从最基本的开始,一步一步完成一个支持图文混排、支持图片和链接点击的排版引擎。CoreText 简介CoreText 是用原创 2016-04-26 14:30:21 · 2509 阅读 · 2 评论 -
CoreText 进阶
在上一篇《基于 CoreText 的排版引擎:基础》中,我们学会了排版的基础知识,现在我们来增加复杂性,让我们的排版引擎支持图片和链接的点击。支持图文混排的排版引擎改造模版文件下面我们来进一步改造,让排版引擎支持对于图片的排版。在上一小节中,我们在设置模版文件的时候,就专门在模板文件里面留了一个名为type的字段,用于表示内容的类型。之前的type的值都是txt,这次,我们原创 2016-04-26 16:02:00 · 2676 阅读 · 0 评论 -
优化UITableViewCell高度计算
我是前言这篇文章是我和我们团队最近对 UITableViewCell 利用 AutoLayout 自动高度计算和UITableView 滑动优化的一个总结。我们也在维护一个开源的扩展,UITableView+FDTemplateLayoutCell,让高度计算这个事情变的前所未有的简单,也受到了很多星星的支持,github链接请戳我这篇总结你可以读到:UITableView转载 2016-04-28 10:00:39 · 372 阅读 · 0 评论 -
iOS单元测试
摘要今天给大家着重介绍一下单元测试,很多人可能没有听过单元测试或者是只是听说过,而没有实际的去实践过,没有关系,今天就给大家普及普及这方面的知识,并且带着大家进行实践,切身体验一下单元测试好处.如果一个移动端的开发人员对单元测试不去重视他,这种开发人员往往表现一种“无知的自信”,总觉得自己写的代码质量很高,直到一次次虫子(Bug)把自己咬的头破血流时,出现重大问题时,才发现原来自己的代原创 2016-05-10 08:35:32 · 1316 阅读 · 1 评论 -
国内iOS大牛博客地址
博客地址RSS地址OneV's Denhttp://onevcat.com/atom.xml破船之家http://beyondvincent.com/atom.xmlNSHipsterhttp://nshipster.cn/feed.xmlLimboy 无网不剩http://feeds.feedburner.com/l原创 2016-05-10 11:04:59 · 2593 阅读 · 0 评论 -
iOS通讯录
1.使用UITableView,实现联系人字母排序、点击字母跳转显示联系人组目录;2.使用UISearchController,实现联系搜索,动态显示符合查询的联系人;3.点击通讯录列表项,显示联系人信息(使用自定义模式化窗口类似与UIAlertView,使用UIwindow实现),点击拨号,可以直接拨打电话;4.实现获取手机通讯录里面的联系人信息;详情见资源:http://dow原创 2016-04-29 08:13:49 · 1014 阅读 · 0 评论 -
iOS 框架整体介绍
OS应用程序基于Foundation和UIKit框架 在你开发程序时,主要使用框架就是Foundation和UIKit,因为它们包含了你需要的大部分东西。Foundation框架为所有的应用程序提供基本系统服务 使用Foundation可以:创建和管理集合,比如数组和字典访问存储在应用程序里的图片和其它资源创建和管理字符串提交和接收通知创建日期和时间对象自动发现IP原创 2016-04-29 08:20:51 · 547 阅读 · 0 评论