• Home
  • Github

戴奕

你等等,让我先吃完。

  • August 13, 2017

    自定义字体出问题啦!

    本篇文章讲的是在实际项目中碰到一款自定义字体在展示上出现问题,然后运用先进的苹果爸爸的工具来解决这个问题的故事。

    • 戴奕
    • 9 Minutes
  • May 18, 2017

    super关键字帮我们做了什么?

    本篇文章讲的是super的实际运作原理,如有同学对super与self的区分还有疑惑的,请参考ChenYilong大神的《招聘一个靠谱的iOS》面试题参考答案(上)。

    • 戴奕
    • 37 Minutes
  • May 1, 2017

    iOS动态更换App图标(二):无弹框更换App图标

    上篇文章我们详细查看了更换App图标的使用方法,并做了个小Demo。尽管当前我们可以实现动态更换App图标了,但是每次更换图标时,苹果官方给加的“友好提示”对用户以及开发者都不是那么“友好“。官方并没有给出可以不弹框的方法,毕竟App图标对于苹果来说是一个很重要的审核部分,如果任由开发者在上架后不提示用户而随意修改图标,会造成不好的用户体验,所以苹果会在使用此API时弹框告知用户该App图标已修改(个人猜想)。

    不过今天我们想谈谈如何突破这个弹框限制(毕竟开发者也不是傻,不会胡乱更换图标的是不是🤣)。

    • 戴奕
    • 6 Minutes
  • May 1, 2017

    iOS动态更换App图标(一):基础使用

    动态更换App图标这件事,在用户里总是存在需求的:有些用户喜欢“美化”自己的手机。至于用户们喜欢美化到什么程度,这得看个人需求。有的用户想定制个性的App图标,那么各大iPhone论坛里都有方法可以不越狱更改App图标;有的用户想让App图标“动”起来(如系统应用时钟),那么不越个狱还真不好办。

    不过今天我们想谈谈苹果官方对于动态更换App图标的支持。

    • 戴奕
    • 14 Minutes
  • March 12, 2017

    DYLeftSlipManager侧滑菜单简析

    标题是简析,不是解析

    所以我只谈思路,不谈详细实现

    DYLeftSlipManager是一个侧滑菜单组件,它与别的侧滑菜单不同的是,它将“侧面菜单”以及“主页面”之间完全解耦合。

    • 戴奕
    • 8 Minutes
  • January 7, 2017

    二级指针与ARC不为人知的特性

    先看一眼熟知的代码

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    - (void)viewDidLoad {
    [super viewDidLoad];
    NSData *data = [@"{\"key\":\"value\"}" dataUsingEncoding:NSUTF8StringEncoding];
    NSError *error = nil;
    id dataObj = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error];
    if (error) {
    NSLog(@"解析JSON出错。 error : %@",error);
    } else {
    NSLog(@"解析JSON正确。 dataObj : %@",dataObj);
    }
    }

    上述代码中,出现了NSError的实例。该实例是用来表明发生了某种错误。在ARC中由于使用异常处理会造成内存管理的不便(可能造成内存泄露,或者加入大量样板代码),所以用NSError表明发生了错误是一种不错的选择,苹果的API中也大量使用了NSError。

    这里请关注[NSJSONSerialization JSONObjectWithData:data options:0 error:&error]的最后一个参数:error:(NSError **)error;。该方法使用了二级指针作为参数传入,经由此参数可以将方法中新创建的NSError对象回传给调用者,所以该参数也称为“输出参数”。从这种类型的参数入手,后面我们将讨论一个很严肃的问题~

    • 戴奕
    • 22 Minutes
  • December 29, 2016

    第一份工作总结

    今天结束了第一份工作

    2016年12月29日走完所有离职流程,中午就收拾完东西离开了公司。工作了2年,离开一个熟悉的地方总是有点不一样的感觉。

    • 戴奕
    • 0 Minutes
  • December 19, 2016

    深挖BOOL

    为啥要深挖这玩意

    你每天都在用BOOL吧?那我就来问一道题:请问BOOL是非0即真吗?

    如果不是百分百确定的,请往下看。

    • 戴奕
    • 20 Minutes
  • October 14, 2016

    你对@synthesize混淆了吗?

    简单谈谈@synthesize

    @synthesize是编译器自动生成setter/getter方法的实现(实现实现实现很重要)的关键词。当前开发中使用了@property后,会在.m中自动生成@synthesize 属性名 = _属性名,而不是@property本身帮我们生成setter/getter方法,@property本身只是生成setter/getter方法的声明(声明声明声明很重要)。

    • 戴奕
    • 4 Minutes
  • October 14, 2016

    最简单的2个imageView实现Banner

    先讲讲这是个啥东西

    无限广告轮播

    就是这个东西,在使用智能手机的年代,基本所有人都看到过这个东西吧。就是左右可以滚动,中间放着广告图片的一个东西。

    • 戴奕
    • 13 Minutes
  • 1

© 2017 戴奕的个人博客
POWER BY HEXO