Swift下Array不能使用!可变标记

问题描述:Xcode beta4的Array从

  • var path:CGPath
  • []改成了

  • var path:[CGPath]
  • 这种用法。然后定义成

  • var path:[CGPath]!
  • ,报错如下:
    Immutable value of type only has mutating members named ‘append’

    问题分析:可空符号其实是一层封装,使用时实际上需要压包和解包。使Array变成了let。可能是Xcode的一个bug。
    暂时先去除!,这样用:

  • var path:[CGPath]
  • 《爱情公寓》第四季

      小贤(陈赫 饰)和一菲(娄艺潇 饰)的事业都开始走上正轨,但互相之间的感情依然磕磕绊绊。而子乔(孙艺洲 饰)和美嘉(李金铭 饰)之间虽然做回了男女朋友,但吕子乔的花心本性并不改,貌似还是喜欢去泡妞,着实让美嘉头疼。关谷(王传君 饰)的事业蒸蒸日上,但是和悠悠(邓家佳 饰)之间也还是偶有嫌隙。展博(金世佳 饰)对于宛瑜依旧难以忘怀,但也重新开始寻找新的伴侣。张伟(李佳航 饰)的事业终于迎来春天,即将结婚,并且回到了爱情公寓。
      大家在爱情公寓里一起经过了那么多年,那么多事,每一个人都开始渐渐明白自己的生活方向和彼此在自己心中的位置。
      不仅仅有相互之间的调侃、戏谑、捉弄,也更多了份相互鼓励、帮助、扶持。有美好,有欢笑;有失落,有惆怅;有努力,有奋斗,爱情公寓一如既往的见证了大家的青春与成长,无论是一菲、小贤、关谷、悠悠、子乔、美嘉、益达还是展博,大家的故事还在继续……

    在App没有运行的情况下通知中心不回调的问题

    问题描述:推送使用的是BPush,并实现了应用内跳转。在App没有运行(包括后台运行)的情况下,点击推送,跳转失效。
    问题分析
    在App没有运行(包括后台运行)的情况下
    – (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
    函数不回调的问题

    问题解决
    – (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    在此函数中可以拿到回调数据,然后做处理
    NSDictionary* userInfo=[launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
    if(userInfo)
    {
    [self application:application didReceiveRemoteNotification:userInfo];
    }

    iOS8中设置App红点提示没有权限的问题

    问题描述:在iOS8中调用-[UIApplication setApplicationIconBadgeNumber:]会出现如下没有权限的提示:
    Attempting to badge the application icon but haven’t received permission from the user to badge the application
    问题分析
    用如下方法注册通知权限后,App会弹出一个框进行确认。在确认之前或者被否决,都是没有权限设置红点的。
    UIUserNotificationSettings* notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];
    [[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
    iOS8中新增了通知授权后的回调:
    – (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
    问题解决
    把所有
    – (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中的-[UIApplication setApplicationIconBadgeNumber:]
    移到
    – (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings
    回调中

    UITableView第一个Header不显示的问题

    问题描述:今天让设置项适配iPad,用[tableView: viewForHeaderInSection:]函数自定义UITableView的Header,发现第一个Header没有显示。

    问题解决
    原因是没有给[tableView: viewForHeaderInSection:]返回UIView设置高度。
    并且也没有通过-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section指定高度。

    前面2个原因实现一个便可以显示出第一个Header。