imooc iOS weekly meeting(5.8)

整理:@lp_马建成

1.Auto Layout VFL masonry @Dev_GJ

      随着Apple手机屏幕、像素的变化,自iOS6之后苹果发布了Auto Layout自动布局工具,其实也就是从之前我们通过绝对布局到相对布局(安卓从诞生那天貌似就用的是相对布局,毕竟要适配那么多屏幕/html+css布局中也很早就提出相对布局)。

       Auto Layout布局一种是通过xib可视化调试(小项目/外包项目/个人Demo/以及变化不大的页面建议用),若是产品话的项目尽量避免xib的使用,xib对SVN/GIT等版本管理工具适配的并不是那么好,若团队项目用多了xib,后面一堆麻烦事等着你。

        Auto Layout学习教程推荐:segmentfault.com/a/119000000…

AutoLayout使用

       1.1 xib或者Storyboard中,使用Xcode提供图形界面直接添加约束即可

       1.2 在代码中使用苹果提供的API添加约束

       1.3 使用VFL语言,全称Visual Format Language

       1.4 使用三方框架添加约束(Masonry)【推荐】github.com/SnapKit/Mas…

2.imooc编程/测评题缓存实现 @迎_风_起_舞

      经慕课网用户大力反馈,需要编程测评题缓存,我们在下个版本中即将上线这块功能。

     由于编程/测评题经常变动,而且样式繁多,我们在2.0后全部切换到webview得方式,虽然webview帮客户端减轻了很多工作,但webview对内存的消耗,页面的体验都是比较差的。这次小得修改就是把编程测评题和视频一起提供下载,一个编程/测评题包含一个html和一大堆js+css,基于遍历html,爬出js+css方式比较麻烦,故我们的方式步骤如下:

    a.由服务端把单个编程/测评题打包成zip

    b.客户端通过断点续传下载类下载zip

    c.用户需要看本节课程时,

         c0.用第三方库SSZipArchive解压缩

         c1.清除SSZipArchive

         c3.本地调用【baseURL需要给你的html和css+js的相对目录】

[_webView loadHTMLString:[NSString stringWithContentsOfFile:[localFilePath stringByAppendingPathComponent:@"index.html"] encoding:NSUTF8StringEncoding error:nil] baseURL:baseURL];

3.课程跳转【App内+App外部】

      a.字符串判断,跳到对应的页面[应用内]

        b.应用间跳转-schema方式

           b1.targets-Info->URL Types 设置

         b2.在AppDelegate类中用这个方法完成App跳转后处理工作

- (BOOL)application:(UIApplication*)application openURL:(NSURL*)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotationNS_AVAILABLE_IOS(4_2);// no equiv. notification. return NO if the application can't open for some reason

4.夜间模式:键盘问题 @_______白丁

      慕课网iPad增加了夜间模式功能,除了UI层夜间切换外,对系统键盘等也需要切换,在原生UI上,调用键盘都可以通过输入框的.keyboardAppearance属性修改

UITextView*textView = [[UITextViewalloc]initWithFrame:self.view.bounds];

textView.keyboardAppearance=UIKeyboardAppearanceDark;


      但对于webview的夜间模式我们需要用一个runtime的方法,具体看这个链接

stackoverflow.com/questions/1…

---------------------------------

5.一些开发工具推荐 @一部美剧

     a.SSZipArchive[压缩解压缩第三方库]

     b.测试工具-开发者选项[iOS设置-开发者选项]

真机需要连接到电脑才可能出现这个选项,利用开发者中得一些工具,可以帮助我们测试很多复杂环境的bug,目前只是看了一下网络这一块,其他后续安排再研究。

           c. Charles

http抓包工具,我们可以抓一些其他APP的接口,推算一些功能的实现,一定减少我们重新造轮子的成本,其次我们可以基于其他APP做一些比较有趣的事情。Charles具体使用,请参照原软件。

       d.xcode 闪退日志Crashes

          注意:d1.需要在iTunes connect中添加以下权限

                 d2.xcode->Organizer打开

     e.SimPholderwww.simpholders.com

       Apple的沙盒目录地址在iOS8之后又变动了一次,无论以前还是现在都是很难管理,SimPholder很好的解决了这个问题。

       f.JSON  XML Parser 【json xml 格式化工具】

      g.Reveal【View Debug工具,也可以在越狱机器上查看其他APP的View层次,推荐书:iOS逆向工程】

     h.Core Animator

     UI设计或者工程师可以通过简单的设置,生成比较漂亮的动画效果。

排版:MarkDown语法不熟,排版有点乱,下次修正。

注:本文来自imooc iOS团队,有什么错误的地方请及时联系我@lp_马建成,以免误人子弟,感谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值