zoukankan      html  css  js  c++  java
  • iOS开发UI篇—IOS开发中Xcode的一些使用技巧

    iOS开发UI篇—IOS开发中Xcode的一些使用技巧

    一、快捷键的使用

    经常用到的快捷键如下:

    新建

    shift + cmd + n     新建项目

    cmd + n             新建文件

    视图

    option + cmd + 回车 打开助理编辑器

    cmd + 回车           显示主窗口

    cmd + 0             导航窗口

    option + cmd + 0    工具窗口

    在.m & .h之间切换           control + cmd + 上/下

    按照浏览文件的前后顺序切换     control + cmd + 左右

    查看头文件       control + cmd + j

    切换到对应的函数control + 6 支持智能输入,注意输入法

    运行

    cmd + r             运行

    cmd + .             停止

    cmd + b             编译

    cmd + shift + b 静态内存分析编译,可以检查程序结构上是否存在内存泄露

    排版

        control + i         将选中按钮重新缩进

        cmd + ]             向右增加缩进

        cmd + [             向左减少缩进

        cmd + /             注释/取消注释,提示:取消注释时,注释双斜线必须在行首

        cmd + 向上           到文件开始位置

        cmd + 向下           到文件末尾位置

    二、OC专有注释

    注释形式和效果

    (1)#pragma mark 注释

    (2)#pragma mark- 注释

    三、warning的使用(注意)

    使用形式:

    #warning 代码还没有写完

    可以帮助我们对代码进行快速的定位

    四、代码块的使用

    对于经常使用的代码块,可以以代码块的方式保存起来,设置提示词,以便快速的编码。

    对代码块进行适当的编辑

    使用<#name#>和<#type#>让保存的代码块不被“写死”;

    设置后的提示效果:

    五、打印内容查看(重写description方法的技巧)

    代码示例:   

    1 - (NSString *)description
    2 {
    3     // 包含对象类型名称,以及对象的指针地址
    4     return [NSString stringWithFormat:@"<%@: %p> {answer: %@, title: %@, icon: %@, options: %@}", [self class], self, self.answer, self.title, self.icon, self.options];
    5 }

    提示:

    如果要在开发时,跟踪对象的明细信息,可以重写description方法,类似于java的toString()

    为根类添加一个扩展

     1 #import "NSArray+Log.h"
     2 
     3 @implementation NSArray (Log)
     4 
     5 - (NSString *)descriptionWithLocale:(id)locale
     6 {
     7     // 遍历数组中的所有内容,将内容拼接成一个新的字符串返回
     8     NSMutableString *strM = [NSMutableString string];
     9     
    10     [strM appendString:@"(
    "];
    11     
    12     // 遍历数组,self就是当前的数组
    13     for (id obj in self) {
    14         // 在拼接字符串时,会调用obj的description方法
    15         [strM appendFormat:@"	%@,
    ", obj];
    16     }
    17     [strM appendString:@")"];
    18     return strM;
    19 }
    20 
    21 @end
    View Code
  • 相关阅读:
    递归
    pull 一下新的多继承 姿势
    OnDestroy()里的一些思考。----以及对“”不使用的对象应手动赋值为null” 的正确理解姿势
    为什么要用Volley中的RequestFuture封装RxJava来用异步请求处理同步请求?
    安卓 摇一摇 包含 objectAnimator valueAnimator的动画效果
    三个问题
    状态栏透明而实现 "沉浸式" 及兼容问题
    RecycleView GridLayoutManager 分割线
    项目随笔之大小系列:px,sp,dp;java设置大小(LayoutParams)
    安卓开发中getString()
  • 原文地址:https://www.cnblogs.com/dondre/p/4092255.html
Copyright © 2011-2022 走看看