美文网首页
XCode 使用笔记

XCode 使用笔记

作者: Thresh0ld | 来源:发表于2016-08-31 17:47 被阅读59次

本人iOS菜鸟一名,在使用iOS开发工具XCode过程遇到的问题在此进行记录。

安装CocoaPods


[**threshold@ThresholddeMacBook-Air**:**~**$] sudo gem install cocoapods
Password:
Fetching: i18n-0.7.0.gem (100%)
Successfully installed i18n-0.7.0
Fetching: thread_safe-0.3.5.gem (100%)
Successfully installed thread_safe-0.3.5
Fetching: tzinfo-1.2.2.gem (100%)
Successfully installed tzinfo-1.2.2
Fetching: minitest-5.9.0.gem (100%)
Successfully installed minitest-5.9.0
Fetching: concurrent-ruby-1.0.2.gem (100%)
Successfully installed concurrent-ruby-1.0.2
Fetching: activesupport-5.0.0.1.gem (100%)
ERROR:  Error installing cocoapods:
 activesupport requires Ruby version >= 2.2.2.

安装cocoapods报错。

sudo gem install activesupport -v 4.2.6

再安装cocoapods就OK了.

  • 使用Cocoapods
    在项目文件夹下新建个文件:Podfile
Paste_Image.png

在文件中写

pod 'AVOSCloud'

然后关闭XCode.

打开终端。cd到这个目录。
输入

pod install

等待安装。

Paste_Image.png

ok 啦,以后打开项目就打开 .xcworkspace文件即可

1. 预览StoryBoard

Paste_Image.png

Shift Optional 单击 会弹出如下的预览位置选择框

Paste_Image.png

选择一个位置即可进行预览StoryBoard

Paste_Image.png

号可以添加不同的设备。选中一个设备,按Delete键删除设备

2. 快捷键

  1. Ctrl 0 关闭显示导航窗口
  2. Ctrl 拖拽StoryBoard View 相当于鼠标右键拖拽View

    常用来关联View到代码中或者设置View的Constraints(约束)

  3. Command =让StoryBoard上的View大小自适应文字
  4. Shift 右击Shift Ctrl + 单击 在StoryBoard上可以选择要选中的View对象。
    就像下面这样:
    Paste_Image.png

3. 屏幕约束

横向是宽度,纵向是高度。

常规 紧凑
常规 iPad iPhone竖屏
紧凑 iPhone6sPlus横屏 iPhone 4/5/6 横屏

常规:长度够了 紧凑:长度不太够用
为什么6sPlus 横屏例外呢,因为6s屏幕很大,横起来的时候原来的高度就用做横向长度,这相当于iPad的宽或高(可粗略认为iPad宽高相同),所以属于常规

4. 杂项

  • Align 对齐
  • Pin 固定


    Pin.png

constraint to margins 勾选上是设置到margin的距离,如果是要充满屏幕,一般去掉这个勾,四个方向填0,然后Add Constraints
aspect ration 是否自适应缩放

  • 删除Swift文件,要Move to trash,而不是移除引用.
Delete_Swift.png
  • 本土化应用

例如UITableView Cell中滑动删除按钮默认是英文的

Info.png
  • UIColor RGB颜色设置值时要记得除以255
shareRowAction.backgroundColor = UIColor(red: 0/255, green: 171/255, blue: 97/255, alpha: 1)
  • 转场

    • Push deprecated 压栈 带返回按钮
    • Modal deprecated 模态 必须完成这个才能结束
  • 嵌入导航控制器

    1. 菜单栏简单点击法: Editor -> Embed in -> Navigation Controller
      Paste_Image.png

    嵌入导航控制器后的效果:

Paste_Image.png
  • Segue

    • Show 目的视图会被压入导航栈顶部。导航条会提供一个后退按钮,用以返回源视图。这是最常用的方式
    • Show detail:与show类似,但会替换源视图。将没有导航条和后退按钮
    • Present Modally: 模态显示内容。目的视图会从底部向上弹出。通常用于显示跟页面连贯性不强的视图。比如登录(无论在哪个页面,都可能调出此功能)
    • Present as popover:iPad中常用,模态显示一个带箭头指向圆角矩形的弹窗,类似一个弹出菜单。就像漫画书中两个人对话中的对话框
  • 转场 Segue 传递数据

在可视化的过渡发生前,源控制器会得到通知,触发 prepareForSegue()方法
可在prepareForSegue方法中传递相关数据给目的地控制器
首先需要给转场 Segue 加一个标识符(Identifier)
方法:选中转场,属性栏 identifier

Paste_Image.png

在源控制器中写:

 // In a storyboard-based application, you will often want to do a little preparation before navigation
    override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        // Get the new view controller using segue.destinationViewController.
        // Pass the selected object to the new view controller.
        if segue.identifier == "showRestaurantDetail"{
            let destVC = segue.destinationViewController as! RestaurantDetailViewController
            destVC.restaurantName = restaurants[(tableView.indexPathForSelectedRow?.row)!]
            destVC.restaurantImage = restaurantPictures[(tableView.indexPathForSelectedRow?.row)!]
        }
    }
Paste_Image.png
  • UIImageView 的 Mode
    • Scale to Fill (拉伸 - 默认)

    图片适应容器尺寸,图片可以背完整显示,但是可能会被拉伸而改变比例

    • Aspect Fit (居中)

图片保持比例不变,可以完整显示并居于容器中间

  • Aspect Fill (平铺)

图片原始尺寸不变,如果超出容器尺寸,会被截断一部分。
注意平铺模式,多余的部分会覆盖周围视图一部分,所以要先择裁边属性。Clip SubViews

Paste_Image.png
  • iOS适配动态字体

iOS在系统设置-辅助功能可以设置字体大小。但是App需要对此进行适配

适配方法就是在控件的字体上选择一种文字样式。

Paste_Image.png

比如选择“Headline”

  • 无法在View上拖入新View

例如想在UIImageView上拖入UIButton,但是拖不上去。
这个时候需要拖一个View(就是View,不是UIButton等其他控件)到原来控件位置,其他控件都拖到这个新View上面即可。

Paste_Image.png
  • 在Modal窗口返回上一个界面 ( UnWind Segue )
Paste_Image.png

从Button拖到另一个ViewController 选择Modally就是模态显示新窗口(无返回键)

先在上一个Cotroller编写个方法(参数必须为UIStoryboardSegue),然后按照下面方式拖点击事件即可关闭窗口。

 @IBAction func closeSegue(segue:UIStoryboardSegue){
        //返回时的操作,可以为空
    }
Paste_Image.png
  • 启用组件

例如启用地图组件(MapKit)

Paste_Image.png

嗯 ,就是这么简单,打开地图开关就能让App拥有地图相关功能

  • CoreData

    • 生成CoreData实体类
Paste_Image.png
  • PageView 翻页视图
    transition style 翻页样式。
    Scroll 滑动
    Page Curl 翻书样式
Paste_Image.png
  • TabBar
    TabBar 转场后不显示TabBar
    勾上 Hide Bottom Bar on Push


    Paste_Image.png

如果要在代码中设置,就在转场前设置目的视图的BottomBar为hide

  • 重构StoryBoard(引用Storyboard)
Paste_Image.png

相关文章

  • 2019-04-22

    关于处理线上bug一些小笔记 1、使用xcode自带的线上bug记录信息的功能 步骤1:使用打开xcode->wi...

  • 使用Core Data出现Missing current ver

    @(iOS学习)[笔记] Xcode 7 beta 3使用Core Data出现 Missing current ...

  • Xcode、Mac个人常用快捷键

    Xcode9.1 Mac 使用外接键盘 不能像使用苹果笔记本一样使用触控板来操作屏幕:

  • xcode 使用笔记

    最近做个 IM 相关的项目,为了搞个开源的 IOS 版本,因此开启了 XCode 开发使用 遇见了如下几点问题 环...

  • XCode 使用笔记

    本人iOS菜鸟一名,在使用iOS开发工具XCode过程遇到的问题在此进行记录。 安装CocoaPods 安装coc...

  • iOS开发笔记— Xcode、UITabbar、特殊机型问题分析

    iOS开发笔记— Xcode、UITabbar、特殊机型问题分析 iOS开发笔记— Xcode、UITabbar、...

  • Vapor安装/运行

    小白上路充当笔记使用! Mac系统下安装 安装Homebrew 安装Vapor 安装验证 新建项目 创建Xcode...

  • WorkNote

    以下内容为工作笔记: 1 尽量使用double,不使用float,否则带来不可预料的截位问题。 2 Xcode8 ...

  • mac使用git管理Github

    前言 学习笔记 -- 使用git管理Github 正文 最新版本Xcode,在terminal下可以发现git...

  • 高效使用你的Xcode

    高效使用你的Xcode 高效使用你的Xcode

网友评论

      本文标题:XCode 使用笔记

      本文链接:https://www.haomeiwen.com/subject/ejzqettx.html