GVKun编程网logo

iOS开发见闻-第3期(ios 开发)

5

对于想了解iOS开发见闻-第3期的读者,本文将是一篇不可错过的文章,我们将详细介绍ios开发,并且为您提供关于AI实战营第3期、iOS10即将来袭!升级你的iOS开发装备、IOS开发UI篇—iOS开发

对于想了解iOS开发见闻-第3期的读者,本文将是一篇不可错过的文章,我们将详细介绍ios 开发,并且为您提供关于AI实战营第3期、iOS 10即将来袭!升级你的iOS开发装备、IOS 开发UI篇—iOS开发中三种简单的动画设置、iOS 第三方库收藏以及相关iOS开发工具的有价值信息。

本文目录一览:

iOS开发见闻-第3期(ios 开发)

iOS开发见闻-第3期(ios 开发)

iOS开发见闻-第3期

欢迎加QQ群讨论:157672725
转载请注明地址: http://www.voidcn.com/article/p-nlzrvben-bdo.html

文章

1.NSObject的load和initialize方法 : 三石·道 写的写篇关于load、initialize的方法,与别人的不同之处在于道明了原理。非常喜欢他那句“源码面前没有秘密”。

2.细说ReactiveCocoa的冷信号与热信号 :美团技术团队关于ReactiveCocoa信号的讲解,如果你喜欢用ReactiveCocoa,那么请不要错过。

3.一种头像缓存策略 : 许多 App 都有用户系统,不论是自己实现还是使用第三方,大概都需要显示用户的头像。该篇文章讲述了nixzhu的策略,能帮助我们了解缓存相关的知识。

工具

1.gh-unit : 一款测试框架,方便且功能强大。
这里写图片描述
这里写图片描述

2.fui : 还记得ctrl+shift+o吗?fui能帮我们找到没有用到的头文件,避免文件引用带来的问题。喜欢在Xcode直接用的朋友可以看这里
这里写图片描述

3.getpostman : 一个测试RESTful服务的工具。可以利用Chrome插件的形式把各种模拟用户HTTP请求的数据发送到服务器,帮助app开发人员测试接口。

这里写图片描述

开源

1.TheAmazingAudioEngine : 非常强大且使用简便的音频框架。

这里写图片描述

2.MWPhotoBrowser : 一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。
这里写图片描述这里写图片描述这里写图片描述

3.FLAnimatedImage : 如果你想像使用png一样使用gif,FLAnimatedImage是个不错的选择。
这里写图片描述

AI实战营第3期

AI实战营第3期

本文作者:yunzhixueyuan

原文链接地址:https://developer.baidu.com/topic/show/290344

iOS 10即将来袭!升级你的iOS开发装备

iOS 10即将来袭!升级你的iOS开发装备

WWDC(苹果开发者大会)刚刚过去不久,iOS 10将不久来袭,是时候升级你的iOS开发装备了!小编整理了10款必备开发工具,让你的开发过程事半功倍。

SourceTree

SourceTree是一个免费的Mac软件,主要用于Git和Mercurial版本控制。它可以帮助你进行源代码控制计划,跟传统的复杂的命令行版本控制软件相比,SourceTree是一款独一无二的GUI工具。对于新手Git用户来说,SourceTree使用起来简单且高效,对于经验丰富的app开发人员来说,SourceTree有着非常强大的功能。

Slash

Slash是iOS的一个开源库,它为NSAttributedStrings的样式添加了扩展标记语言,可以定义每个标签的意义,这使它非常具有可扩展性。
假如在不使用界面生成器的情况下,你要在app中使用带属性字符串,你就需要调整NSRanges和字体属性。在Slash的帮助下,你可以简单地在iOS开发中使用属性字符串,并且生成的代码更为干净和整洁。

APICloud

APICloud是一个移动应用开发平台,开发者使用平台技术,使用平台中成百上千个模块进行iOS App开发。使用APICloud平台最大的好处在于,整个开发过程变得便捷、快速,像是搭积木一样建立起自己的App,同时一套代码可以生成两个安装包,如此一来,Android版本的也顺手开发完成了。

MarkMan

MarkMan是一款iOS app开发必备高效的设计稿标注和测量软件,用于操作系统:Mac OS,Windows。

AppCode

AppCode是全新的Objective-C的IDE集成开发环境,旨在帮助开发者开发Mac OS X和iOS系统的相关应用程序。

AppCode主要功能:
代码补全:AppCode的代码补全并不局限于类、方法或者变量,它甚至还具备了十分可靠的上下文推测能力,假如开发者编写一个从未出现过的变量,AppCode都会询问是否要添加这个变量。这样开发者将有机会避免一些可能无意义的来回跳转,而更加专注于有效代码的编写。
代码检查和修改:AppCode的代码分析是实时进行的,在编写代码的过程中,开发者就能看到存在的问题。另外,AppCode提供了高度可定制的代码风格模版,并可以很简单地将其套用到任何代码上。这样,不论开发者写多少代码,最后产生的代码都是漂亮优雅的。
快速跳转:Xcode的最大问题就是难以定位文件和类,想要寻找一个文件的话,基本上不可能完全用键盘来实现。但是AppCode中添加了高效的导航功能,配合类似于微博的特定符号的搜索,可以完成从文件到类的快速跳转,避免了可能出现的鼠标操作,提高了开发者的工作效率。

Cornerstone

Mac上最佳的SVN管理iOS app开发必备工具,可用于的用于操作系统包括Mac OS。

Chocolat

Chocolat是Mac系统上最新出现的一款强大的文本编辑器,支持vim模式、多种编程语言、窗口分割、标签页、色彩主题等功能。另外Chocolat具有实时的代码检错功能,它可以在编写代码时检查代码的正确性(目前只支持Ruby、Python、PHP和JavaScript)。

Kinvey

Kinvey是一项跨平台的服务,有着多项功能,比如用户管理、业务逻辑、数据存储、推送通知、跨CDN大量文件存储、分析、自动化版本管理以及其他功能。不管是个人开发者还是企业级开发者,Kinvey都是一个强大的平台。

TestFlight

TestFlight是很多开发者都使用过的测试服务,包括反馈、实时崩溃提醒以及应用内可以引起特定评分的用户反馈提示。任何一项服务都会有瑕疵,TestFlight也不例外,它在管理测试用户提供的文件方面有点缺陷。前不久TestFlight推出了处于封闭测试中的新的移动分析服务FlightPath,FlightPath似乎要取代自家的TestFlight Live分析服务。TestFlight Live于2012年推出。TestFlight 现在已经支持 Android 平台app测试。

Countly

Countly为开发者提供了实时的、开源移动分析平台,通过可视化的方式将收集自手机用户的数据展现出来,从而给开发者可行的建议。开发者可以轻易地将Countly服务器端代码部署在自己的服务器上,并将开发工具包整合进自己的app中。目前,Countly分析系统有iOS 和 Android两种版本的开发包。如果你熟悉的Google Analytics和Flurry,那么Countly也可提供相同的功能。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

您可能感兴趣的文章:
  • iOS 10 Today Widget解析
  • 针对iOS10新增Api的详细研究
  • iOS10适配之权限Crash问题的完美解决方案
  • iOS10添加本地推送(Local Notification)实例
  • iOS10 推送最新特性研究
  • iOS10推送教程详解
  • iOS10推送通知开发教程
  • iOS10全新推送功能实现代码
  • iOS10 适配远程推送功能实现代码
  • iOS开发之widget实现详解

IOS 开发UI篇—iOS开发中三种简单的动画设置

IOS 开发UI篇—iOS开发中三种简单的动画设置

一、首尾式动画

// beginAnimations表示此后的代码要“参与到”动画中
    [UIView beginAnimations:nil context:nil];
//设置动画时长
    [UIView setAnimationDuration:2.0];
    
      self.headImageView.bounds = rect;
    // commitAnimations,将beginAnimation之后的所有动画提交并生成动画
    [UIView commitAnimations];

说明:如果只是修改控件的属性,使用首尾式动画还是比较方便的,但是如果需要在动画完成后做后续处理,就不是那么方便了

二、block代码块动画

   //简单的动画效果
    [UIView animateWithDuration:2.0 animations:^{
        showlab.alpha=0;
    } completion:^(BOOL finished) {
        [showlab removeFromSuperview];
    }];

(1)在实际的开发中更常用的时block代码块来处理动画操作。

(2)块动画相对来说比较灵活,尤为重要的是能够将动画相关的代码编写在一起,便于代码的阅读和理解.

三、序列帧动画(以一个简单的TOM猫动画示例)

    

导入提前准备好的素材,对UIImageview和button按钮进行连线。

- (IBAction)eat {
    NSMutableArray  *arrayM=[NSMutableArray array];
    for (int i=0; i<40; i++) {
        [arrayM addObject:[UIImage imageNamed:[NSString stringWithFormat:@"eat_%02d.jpg",i]]];
    }
    //设置动画数组
    [self.tom setAnimationImages:arrayM];
    //设置动画播放次数
    [self.tom setAnimationRepeatCount:1];
    //设置动画播放时间
    [self.tom setAnimationDuration:40*0.075];
    //开始动画
    [self.tom startAnimating];
}

点击按钮,即可执行动画,实现效果截图如下:

四、补充知识

1. Images.xcassets中的素材

(1)只支持png格式的图片

(2) 图片只支持[UIImage imageNamed]的方式实例化,但是不能从Bundle中加载

(3)  在编译时,Images.xcassets中的所有文件会被打包为Assets.car的文件

 

 2. UIImageView的序列帧动画(需要考虑程序性能,释放数据)

// 0. 是否正在动画

[self.tom isAnimating];

// 1. 设置图片的数组

[self.tom setAnimationImages:arrayM];

// 2. 设置动画时长,默认每秒播放30张图片

[self.tom setAnimationDuration:arrayM.count * 0.075];

// 3. 设置动画重复次数,默认为0,无限循环

[self.tom setAnimationRepeatCount:1];

// 4. 开始动画

[self.tom startAnimating];

// 5. 动画播放完成后,清空动画数组

[self.tom performSelector:@selector(setAnimationImages:) withObject:nilafterDelay:self.tom.animationDuration];

 

3. UIImage imageNamed

(1)在图片使用完成后,不会直接被释放掉,具体释放时间由系统决定,适用于图片小,常用的图像处理

(2)如果要释放快速释放图片,可以使用[UIImage imageWithContentsOfFile:path]实例化图像

 

4. 方法重构的策略

(1) 将具有共性的代码复制到一个新的方法

(2)根据不同的调用情况,增加方法的参数

提示:在写程序时不要着急重构,有时候把代码先写出来,更容易看清楚如何重构才会更好

 

5. Bundle(包)中的图片素材

往项目中拖拽素材时,通常选择

(1) Destination: 勾选

(2) Folders:

    1)选择第一项:黄色文件夹

        注意点:Xcode中分文件夹,Bundle中所有所在都在同一个文件夹下,因此,不能出现文件重名的情况

        特点:

       a.可以直接使用[NSBundle mainBundle]作为资源路径,效率高!

       b.可以使用[UIImage imageNamed:]加载图像

    2)选择第二项:蓝色文件夹

        注意点:Xcode中分文件夹,Bundle中同样分文件夹,因此,可以出现文件重名的情况

        特点:

        a.需要在[NSBundle mainBundle]的基础上拼接实际的路径,效率较差

        b.不能使用[UIImage imageNamed:]加载图


ps:

http://www.cnblogs.com/wendingding/p/3751519.html

http://www.cnblogs.com/wendingding/p/3802830.html

iOS 第三方库收藏以及相关iOS开发工具

iOS 第三方库收藏以及相关iOS开发工具

1.autolayout   :Swift: SnapKit ,OC: Masonry 

1.1.YYKit,YYKit 是一组庞大、功能丰富的 iOS 组件

1.2 MJExtension 以及 MJFresh

2.达到 60 FPS 的滚动帧率 :Swift :AsyncDisplayKit

3.swift加密库, 支持md5,sha1,sha224,sha256... CryptoSwift

4.Kingfisher 是一个异步下载和缓存图片的库 类似于SDWebImage只不过它是纯Swift的实现

5.Peek和Pop是iPhone 6S和6S+上新增的一个很棒的iOS特性,可以很方便地使用3D touch来预览内容。3DTouch动画组件 PeekPop

6.将Alamofire JSON响应数据 转为swift对象

7.RxAlamofire为Alamofire提供 函数响应式(FRP)调用接口,以优雅的方式使用Alamofire进行网络请求

8.PromiseKit异步编程类库 提供了很多实用的异步函数 让异步编程更简单

9.EZSwiftExtensions对Swift标准库, Foundation, UIKit 提供了很多高级扩展函数

10.Aspects swift面向切面编程(AOP)库 【Method Swizzling】

11.PermissionScope权限管理库 提供申请权限授权操作

12.Alamofire网络操作库 基本都知道

13.SwiftyJSON 可以配合Alamofire网络操作库一起使用的json解析库

14.RxSwift是Swift函数响应式编程的一个开源库,由Github的ReactiveX组织开发,维护。

RxSwift的目的是让让数据/事件流和异步任务能够更方便的序列化处理,能够使用Swift进行响应式编程

16.ObjectMapper一个使用Swift写的口语轻松的将你的model转换为json 或者转为model (Class,struct)

17.Realm是一个移动数据库,可运行于手机、平板和可穿戴设备之上。可以让你的应用更快速,带来难以想象的体验。其目标是为了代替 CoreData 和 SQLite 数据库。更多进入官网。

强有力的查看数据库工具Realm browser。用于编辑查看数据

18.SwiftGen 根据图片的名字自动生成enum 防止图片不存在的情况

19.SCLAlertView 弹出框效果

20.开源项目:MMPopupView

21.众享丝滑的Pop手势:FDFullscreenPopGesture 

22.Swift 的UITableviewcell UICollectionViewcell 的安全用法

 

 

 

代码崩溃信息收集工具 Crashlytics

iOS翻墙工具推荐蓝灯吧

专业的寻找图片用icons8

寻找CocoaPod上面第三方开源的库 Trending CocoaPods

也可以去Github上面寻找最多star的开源库

Swift语言指南 

今天的关于iOS开发见闻-第3期ios 开发的分享已经结束,谢谢您的关注,如果想了解更多关于AI实战营第3期、iOS 10即将来袭!升级你的iOS开发装备、IOS 开发UI篇—iOS开发中三种简单的动画设置、iOS 第三方库收藏以及相关iOS开发工具的相关知识,请在本站进行查询。

本文标签: