视图调试

使用视图调试器检查您的视图层次结构,可以轻松地判断视图位置、大小以及实现问题。

  • 在XCode中运行你的应用程序,在调试栏上点击“调试视图层次”按钮,进入视图调试器。

XCode停止你的应用程序,在调试导航栏中显示视图层次,并在主编辑器中显示一个交互式三维模型。

选择显示的窗口,在主编辑器中点击任何位置,按下鼠标键进行拖拽。视图会分解成三维层次,方便您查看视图层的等级划分和视图之间的关系。

左侧的滑动按钮允许你去调节视图间距,使得您能更方便地观察单个视图对象。右侧的滑动按钮允许你使用“从后到前”或者“从前到后”的方式,在一个复杂的视图层次中过滤出特定视图。

  • 在两个滑动按钮中间的是编辑器按钮

  • 点击裁剪按钮去显示在主编辑器中当前显示的实体被裁剪的内容。

  • 点击显示约束按钮去显示在主编辑器中当前选择的视图图层的自动布局约束。

注:尺寸检查能让你去核查尺寸和约束值。

  • 使用重置按钮让主编辑器中视图以标准方向显示。
  • 点击视图模式按钮去选择是否在主编辑器中显示视图内容、线框,以及内容。
  • 缩放控件组允许你去增加或减少显示倍数,或者显示标准大小。

:你也可以利用夹点手势在主编辑器上放大缩小。在编辑器窗口中使用两个手指拖拽手势滚动显示的视图。

在主编辑器上以像素为单位精确显示颜色和尺寸。

  • 在视图层次结构中选择一个视图实体,也是在编辑器中选择它,然后在核查栏中会显示出它的属性。在调式导航窗口中视图层次结构显示了每个视图与它父视图、子视图,以及兄弟视图之间的关系。

 
:在编辑栏中选择一个实体设置为次要选择集,那么它会用比较浅的颜色显示在视图层次结构上。主要的选择集会用深色高亮显示。这些不同选择集可以在复杂的视图层次关系中分出主要视图(在视图层次结构上选择的)与其他选择的视图(在编辑栏选择的)之间的关系。
  • 过滤栏在视图层次结构下面,它含有两个过滤按钮(默认是启用的)。左边的按钮是显示主要视图,即它过滤掉从系统视图实现的二次元素实体对象(不受应用控制的)。右边的按钮只显示可见视图,即它过滤掉应用程序使用视图属性隐藏的视图。

    在过滤栏中输入类型名能方便地过滤出视图。

  • 使用辅助编辑器设置自动模式去查看选定视图对象的源代码。
注:当一个自定义视图对象被选择时,辅助编辑器显示实现文件。当一个系统框架提供的视图对象被选择时,辅助编辑器显示接口文件。
  • 在调试栏上点击继续按钮退出视图调试器,然后继续运行你的应用程序在XCode中。
 
相关链接:

Xcode视图调试的更多相关文章

  1. xcode的调试技巧

    转自:http://www.cnblogs.com/daiweilai/p/4421340.html#biyouji 目录 前言逼优鸡知己知彼 百战不殆抽刀断Bug 普通操作 全局断点(Global ...

  2. 使用Xcode进行调试

    目录 知己知彼 百战不殆抽刀断Bug 普通操作 全局断点(Global BreakPoint) 条件断点(Condational Breakpoints)打印的艺术 NSLog 开启僵尸对象(Enab ...

  3. 新版本Xcode 6的视图调试详解

    开发者会经常遇到视图或者Auto Layout约束中存在bug的情况,并且这种bug很难通过代码发现,所以开发者很有必要熟知如何进行简单高效的视图调试,而Xcode 6的发布使得视图调试变得前所未有的 ...

  4. iOS10 UI教程视图调试

    iOS10 UI教程视图调试 iOS10 UI教程视图调试,当视图很复杂的时候,层次结构就不会很简单了.Xcode可以通过视图(View)调试帮助开发者解决层次结构复杂的问题.视图调试是在Xcode ...

  5. iOS 视图调试器(Debug View Hierarchy) 之 初试牛刀

    参考:http://blog.csdn.net/th_gsb/article/details/44856795 由于iOS的界面开发大多都是用代码实现的,编写的时候,那就是看不见摸不着的情况.所以,如 ...

  6. iOS开发之Xcode常用调试技巧总结

    转载自:iOS开发之Xcode常用调试技巧总结 最近在面试,面试过程中问到了一些Xcode常用的调试技巧问题.平常开发过程中用的还挺顺手的,但你要突然让我说,确实一脸懵逼.Debug的技巧很多,比如最 ...

  7. Xcode 常用调试技巧总结

    NSLog,po命令和普通断点调试相信每个iOS开发者都会,这里就不作介绍了. 一.Memory Graph Xcode8新增:Memory Graph解决闭包引用循环问题 有很多叹号说明就有问题了. ...

  8. Xcode 7 调试野指针利器 Address sanitizer

    Xcode 7 调试野指针利器 Address sanitizer 什么是Address Sanitizer? AddressSanitizer is a fast memory error dete ...

  9. 如何使用Xcode分析调试在真机运行的UE4 IOS版游戏

    写本文的是因为UE4 官方文档虽然也有,但主要讲的是是用UE4Editor把游戏打成一个IPA包的形式发布的方法 而对于想通过Xcode分析UE4的渲染流程来学习或优化的朋友,那官方文档的资料还是不够 ...

随机推荐

  1. GitHub 基本常用知识解答2

    1.如何拥有一个Git仓库的两种途径 (1)在已有的目录中,初始化一个新的. (2) 比如一个新的项目,或者一个已存在的项目,但该项目尚未有版本控制.如果你想要复制一份别人的项目, 或者与别人合作某个 ...

  2. KVC实现原理简介

    KVC,全称:Key-Value-Coding. KVC运用了isa-swizzling技术.isa-swizzling就是类型混合指针机制.KVC主要通过isa-swizzling来实现其内部定位查 ...

  3. object-c中的类目,延展,协议

    协议 协议只有方法的声明(类似于其他编程语言的接口)   协议相当于大家都所遵循的 关键字 @protocol 协议名 <所遵循的协议> 默认NSObject   @end     @pr ...

  4. iOS打印Debug日志的方式

    简单介绍以下几个宏: 1) __VA_ARGS__ 是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持).宏前面加上##的作用在于,当可变参 ...

  5. IOS开发之实现App消息推送(最新)

    好久没有写过博客啦,今天就由本菜鸟给大家做一个简单的IOSApp消息推送教程吧!一切从0开始,包括XCode6, IOS8, 以及苹果开发者中心最新如何注册应用,申请证书以及下载配置概要文件,相信很多 ...

  6. CFString​Transform

    Mattt Thompson撰写. Ricky Tan翻译. 发布于2012年8月6日关于一种语言好不好用,你只需要衡量以下两种指标: API 的统一性String 类的实现质量NSString 是基 ...

  7. 同域iframe的高度自适应

    引子 父页面里控制子页面 子页面里控制父页面 一.引子 我们先看一个示例,有两个页面,1.html通过iframe嵌入2.html,两个页面都是同域的 1.html <!DOCTYPE html ...

  8. mysql远程链接 方法和flush-hosts

    有时候会发现要用远程链接mysql 1 先要在mysql的host的机器上修改mysql表,最快就是复制一下本地localhost,现在phpmyadmin复制功能什么的很好用,然后把host列中的l ...

  9. Effective Java 76 Write readObject methods defensively

    Principle readObject method is effectively another public constructor, and it demands all of the sam ...

  10. forfiles命令批量删除N天前文件

    在整理手上几台SQL SERVER 2000的数据库备份时,一方面为了方便快速还原数据库,另外一方面为了备份冗余.备份方式统一(先备份到本地,然后收上磁带),将以前通过Symantec Backup ...