1.常量名称最好用static标识,例如下面的代码,包括其他一些只需要定义一次,之后不需要变化的变量也最好使用static

  static NSString *CellIdentifier = @"Cell";

2.当设置视图控制器需要接受通知时,需要在dealloc取消监听

  例如下面代码监听通知:

[[NSNotificationCenter defaultCenter] addObserver:self

selector:@selector(applicationDidEnterBackground)

name:UIApplicationDidEnterBackgroundNotification

object:nil];

  则需要重写dealloc方法:

  - (void)dealloc

  {

  [[NSNotificationCenter defaultCenter] removeObserver:self];

  }

3.当出现EXC_BAD_ACCESS异常错误时,可用以下方法找出错误:

设置完以后,当app cash时,Xcode会指出错误的地方,一般是代码语句顺序有误导致内存相关问题

4.向某个视图控制器嵌入另一个视图控制器的实现:

父视图控制器中显示子视图控制器代码,语句顺序不能有错:

DetailViewController *controller = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];

[self.view addSubview:controller.view];

[self addChildViewController:controller];

[controller didMoveToParentViewController:self];

子视图控制器DetailViewController从父视图中移除的代码,语句顺序不能有错:

[self willMoveToParentViewController:nil];

[self.view removeFromSuperview];

[self removeFromParentViewController];

5.对于@""字符串最好以NSLocalizedString()形式出现,有助于后面进行国际化

转载于:https://www.cnblogs.com/guitarandcode/p/5689873.html

iOS开发技巧,细节(二)相关推荐

  1. 【转】几点 iOS 开发技巧

    [译] 几点 iOS 开发技巧 原文:iOS Programming Architecture and Design Guidelines 原文来自破船的分享 原文作者是开发界中知晓度相当高的 Mug ...

  2. iOS开发-定制多样式二维码

    iOS开发-定制多样式二维码   二维码/条形码是按照某种特定的几何图形按一定规律在平台(一维/二维方向上)分布的黑白相间的图形纪录符号信息.使用若干个与二进制对应的几何形体来表示文字数值信息. 最常 ...

  3. IOS开发学习周报(二)

    IOS开发学习周报(二) 简介 课程名称 IOS开发实训 任课老师 郑贵锋老师&字节跳动工程师 学号 16340015 专业(方向) 软件工程(计应) 姓名 陈彬彬 Email 9441312 ...

  4. iOS开发技巧:设置App icon图标及修改应用程序名

    前言 这是iOS开发技巧系列博客的第二篇,本篇主要简单介绍一下如何设置应用程序的icon图标以及修改应用程序名. 设置 icon 首先我们来看看如何设置App icon图标,设置应用程序的icon图标 ...

  5. iOS开发笔记(二):block循环引用

    写这篇文章的缘由是第一次面试时被问到了block循环引用的问题,当时回答的不是很好,首先要明确的是,block是否用copy修饰决定不了循环引用的产生,在此再一次进行补强,有不对的地方还请多多指教. ...

  6. IOS开发入门之二——第一个App

    如果你对怎么开始IOS开发都不懂的话,请看点下面的链接,先学习关于IOS开发环境的配置以及Swift语言入门: IOS开发入门之一--Swift语言基础     本章将教大家创建一个标准的苹果手机应用 ...

  7. iOS开发技巧 - Size Class与iOS 8多屏幕适配(一)

    0. 背景: 在iOS开发中,Auto Layout(自动布局)能解决大部分的屏幕适配问题. 但是当iPhone 6和iPhone 6 Plus发布以后, Auto Layout已经不能解决复杂的屏幕 ...

  8. iOS开发笔记之二十四——Xcode下类中供外部调用的方法添加注释说明技巧

    1.使用介绍 使用该方式后,一个类再调用其他类的外部方法时,可以不用点进去看这个类的用法等说明,可以直接在外部看到,很方便,类似于iOS系统Cocoa自带方法.  举例如下: 一个VideoChatC ...

  9. IOS开发知识(二)

    数据 什么是数据 生活中时时刻刻都在跟数据打交道,比如体重数据.血压数据.股价数据等.在我们使用计算机的过程中,会接触到各种各样的数据,有文档数据.图片数据.视频数据,还有聊QQ时产生的文字数据.用迅 ...

最新文章

  1. ubuntu 中 pip 出现 ModuleNotFoundError: No module named ‘pip._internal‘
  2. 分割文本_PSENet、PANNet、DBNet三个文本检测算法异同
  3. 【杂谈】excel列表创建后,怎么删除蓝色边框线?
  4. 前端单页面拆分多个单页面
  5. 【AS3 Coder】任务七:初涉PureMVC——天气预报功能实现
  6. PHP过滤常用标签的正则表达式
  7. 构建入门Restful Web服务
  8. 分布式红锁的加锁失败的设计原理
  9. 【To Do 难点】最大搜索二叉树
  10. 如何编程在一个文本文件中每隔n个字符插入一个换行符c语言实现,C语言程序设计A形成性作业及答案(31页)-原创力文档...
  11. 如何将pdf转换成txt破解版
  12. QQ音乐MV/腾讯视频下载教程
  13. windows meson ,ninja安装以及vs2017编译 libnice
  14. linux烧录到手机,新人求教,怎么烧录Linux系统到一个小芯片上?
  15. Google CFO 的辞职信(引用)
  16. urdf 学习与制作
  17. C语言学习:一个函数可以有几个返回值?
  18. 分分钟穿透手机,实现远程控制
  19. HDU2795 Billboard 线段树
  20. 51内核单片机实现Bootloader跳转到用户程序,要求两个程序都要支持中断

热门文章

  1. python tornado对接权限中心的sdk封装
  2. 设计图与html 对比
  3. Java基础知识强化之集合框架笔记27:ArrayList集合练习之去除ArrayList集合中的重复字符串元素...
  4. NSARRAY的 内存管理
  5. 简单的绑定数据截取时间字符年月日
  6. UML、XML、WebService,NUnit单元测试,测试驱动开发,httphandl,httpmodel
  7. html 监控键盘,后台监控鼠标和键盘(可监听全局的鼠标以及键盘按键)
  8. bouncycastle NoSuchFieldError:xxx 版本冲突
  9. node 根据图片img url 获取 base64
  10. Linux下部署多个Tomcat