iOS-学习笔记(1)

来源:互联网 发布:易语言编程实例 编辑:程序博客网 时间:2024/06/05 18:13

1. 升级CocoaPods

喜欢使用CocoaPods来管理第三方框架,因为觉得简单、方便。现在CocoaPods已经有1.0版本了,那当然得升级了!

  1. 更新gem

    sudo gem update  --system
  2. 再安装一下cocoapods。因为需要管理员权限,所以前面需要加sudo

    sudo gem install cocoapods

    如果报以下错误:

    ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/xcodeproj`

    则先可执行以下命令,再安装。

    sudo gem install -n /usr/local/bin cocoapods
  3. 执行pod setup

  4. cocoapods 1.0之后,Podfile按以下格式编写

    platform :ios, '8.0'target '你的项目名称' dopod 'AFNetworking', '~> 3.0'end
  5. 卸载cocoapods


    gem uninstall cocoapods

2. Xcode 8 log打印太多,想关掉初始log打印

使用Xcode 8 运行项目发现初始时会打印很多日志,关闭日志的方法为:ProductSchemeEdit Scheme 中设置NameOS_ACTIVITY_MODE,Valuedisable

3. 修改UITextField光标颜色和提示文本颜色

  1. 修改光标颜色:设置UITextFieldtintColor即可。
  2. 修改提示文本颜色:

    //第一种方法 设置 attributedPlaceholdertextField.attributedPlaceholder = [[NSAttributedString alloc]initWithString:@"搜搜看" attributes:@{NSForegroundColorAttributeName:[UIColor redColor]}];//第二种方法[textField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.textColor"];

4. 修改状态栏样式

  1. iOS 7~9的做法

    iOS 7~9的时候,是在info.plist里面设置View controller-based status bar appearanceNO,然后修改UIApplicationstatusBarStyle属性

    [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;

    但是iOS10之后这个属性就过期了。

    1.png

  2. iOS 10的做法

    • 设置View controller-based status bar appearanceYES
    • 在控制器中实现方法,前提是没有UINavigationController包含ViewController才有效。

      - (UIStatusBarStyle)preferredStatusBarStyle {    return UIStatusBarStyleDefault;}
    • 如果UINavigationController包含ViewController,则需要自定义导航控制器,在导航控制器中重写这个方法。
    • 如果我们想在单独某个页面中更改状态栏样式,则可以在导航控制器中这样写:

      - (UIStatusBarStyle)preferredStatusBarStyle {    if ([self.viewControllers.lastObject respondsToSelector:@selector(preferredStatusBarStyle)]) {        return self.viewControllers.lastObject.preferredStatusBarStyle;    }    return UIStatusBarStyleDefault;}

      然后再在viewController中重写方法- (UIStatusBarStyle)preferredStatusBarStyle

5. xib与UITableViewController、UITableViewCell问题

  1. 我们创建UITableViewController同时创建对应的xib文件时,xib文件中的view是个TableView,但是当我们创建的是其子类时,同时创建的xib文件中的view是个UIView而不是UITableView。需要自己手动替换,同时设置代理等。
  2. 使用xib创建tableViewCell时,如果设置的IdentifiertableView注册cell时设置的Identifier不一致,会导致崩溃。

6. 切图

如果你比较不幸需要自己拿着psd文件来切图,或者你嫌弃你家的美工切的图,那可以使用PS + cutterman来切图,非常简单。不过cutterman现在只支持PhotoShop CC 以上的版本。
2.png