1、创建视图的两种方法:用代码创建视图,创建XIB文件。如何决定使用哪种方法?参考法则:如果视图没有子视图,就用代码创建;如果有子视图,就通过XIB文件创建。

2、创建视图的时候,视图控制器会调用loadView方法。

3、UIViewController使用XIB文件创建视图的工作流程:创建UIViewController子类的实例时,通过制定初始化方法(initWithNibName:bundle:)传入XIB文件的文件名。当视图控制器实例需要使用实例变量view的时候,会查看应用程序包内是否存在相应名称的XIB文件(如果传入的名称是nil,那么UIViewController对象会查找和这个UIViewController子类的类名匹配的XIB文件)。接着,视图控制器实例会载入找到的XIB文件。

  loadView方法负责完成上述XIB载入过程。UIViewController的默认loadView方法会查找并载入XIB文件,所以在编写通过XIB文件载入视图的UIViewController子类时,不要覆盖loadView。而在编写通过代码创建视图的UIViewController子类时,就必须覆盖loadView,避免载入XIB文件。

4、

 NSPredicate * predicate;

    NSString* predicateString = [NSString stringWithFormat:@"%@ ==[c] '%@'",kCdUserEntitySns,snsName];
predicate = [NSPredicate predicateWithFormat:predicateString];

@"%@ ==[c] '%@' "中的[c]表示忽略它后面的字符串的大小写

5、设置UINavigationController的title颜色

-(void)setNavigationItemTitleColor:(UIColor*)color
{
self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:color forKey:UITextAttributeTextColor];
}

6、给应用程序图标设置右上角的数字,如下图所示:

    [UIApplication sharedApplication].applicationIconBadgeNumber = ;

设置tabbar右上角的的显示信息也是一样,不过需要赋值为字符串:

self.tabBarItem.badgeValue = @"New";
self.tabBarItem.badgeValue = @"";

7、利用NSSetIndex从数组中取出连续index的值

    static  NSInteger loc = ;
static NSInteger len = ;
NSRange range = NSMakeRange(loc, len);
_datasource = [randomNumbers objectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:range]];

8、判断是不是arc环境

#if __has_feature(objc_arc)
NSLog(@"arc");
#else
NSLog(@"no arc");
#endif

9、自定的代码片段的存储位置:~/Library/Developer/Xcode/UserData/CodeSnippets

10、随机数arc4random_uniform()

  arc4random_uniform(100)——产生0到99得随机数

11、UITableView自动计算高度(iOS8以后)

  设置好约束,通过以下两句代码(self-sizing技术)即可实现cell高度自动计算

    //self-sizing(iOS8之后)
self.tableView.rowHeight = UITableViewAutomaticDimension;
self.tableView.estimatedRowHeight = ;

iOS小知识点记录的更多相关文章

  1. iOS 小知识点(持续更新)

    1.如何通过代码设置Button  title的字体大小 设置Button.titleLabel.font = [UIFont systemFontOfSize:<#(CGFloat)#> ...

  2. iOS小知识点大杂烩

    转自OPEN经验 1,打印View所有子视图 po [[self view]recursiveDescription] 2,layoutSubviews调用的调用时机 * 当视图第一次显示的时候会被调 ...

  3. C#小知识点记录(QQ交流群的一个小问题)Linq提取数据

    请教 这里 LINQ想 找到 最后的 4条 记录 然后放在 这里这个 List Linq查找怎么写呀? 解答:写了一个小例子作为解答. namespace C_Sharp { class Progra ...

  4. iOS小知识点

    1.子视图超出frame的部分不显示  view.clipsToBounds 设置为YES;   UIScrollview的clipsToBounds默认就是YES 2.UIImage 有一个属性叫s ...

  5. ios swift 知识点记录

      1. 定义变量 var name = "***" 定义常量 let name ="*****" 2. swift 变量类型  String, Int, Fl ...

  6. C#小知识点记录,对象的深拷贝

    在CSDN中的定义是: public static string CompareExchange( ref string location1, string value, string compara ...

  7. golang 小知识点记录

    获取url中的参数及输出到页面的几种方式 func SayHello(w http.ResponseWriter, req *http.Request) { req.Method //获取url的方法 ...

  8. React Native小知识点记录

    1>查看 RN 的所有历史版本: npm view react-native versions -json 2>查看 RN 的当前版本: npm view react-native ver ...

  9. iOS小知识点(非UI部分)

    1. _cmd 表示当前方法的@SEL指针, - (void)putString{} 对于这个函数_cmd 等效于@selector(putString)

随机推荐

  1. BZOJ 2212 [Poi2011]Tree Rotations(线段树合并)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2212 [题目大意] 给出一棵二叉树,每个叶节点上有一个权值,现在可以任意交换左右儿子, ...

  2. GCDAsyncSocket类库,IOS下TCP通讯使用心得

    关于在IOS下使用Socket进行通讯的技术文章也许诺很久了,今日又是一个还债的日子,网上虽然很多介绍过AsyncSocket或GCDAsyncSocket的文章,但其实就那么一两篇大部分都是转载,于 ...

  3. jquery ajax 的封装

    var tooAjaxData = new Object(); tooAjaxData = function () { this.AjaxUrl =" ";}; bookInfoC ...

  4. [转] Log4j 配置 的webAppRootKey参数问题

    在tomcat下部署两个或多个项目时,web.xml文件中最好定义webAppRootKey参数,如果不定义,将会缺省为“webapp.root”,如下:<!-- 应用路径 --> < ...

  5. [转]115个Java面试题和答案——终极列表(上)

    本文我们将要讨论Java面试中的各种不同类型的面试题,它们可以让雇主测试应聘者的Java和通用的面向对象编程的能力.下面的章节分为上下两篇,第一篇将要讨论面向对象编程和它的特点,关于Java和它的功能 ...

  6. PHP“Cannot use object of type stdClass as array”

    php再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误 错误:Cannot use object of type stdClass as arra ...

  7. NodeJS搭建HTTP服务器

    NodeJS本来的用途是编写高性能Web服务器.我们首先在这里重复一下官方文档里的例子,使用NodeJS内置的http模块简单实现一个HTTP服务器. 新建server.js var http = r ...

  8. 五、Springboot 之 自定义配置文件及读取配置文件

    说明:建议所有的类应该与spring-boot启动程序同级,不如扫描不到 1.核心配置文件是指在resources根目录下的application.properties或application.yml ...

  9. 谈谈Ext JS的组件——布局的用法续一

    盒子布局 盒子布局主要作用是以水平(Ext.layout.container.HBox)或垂直方式(Ext.layout.container.VBox)来划分容器区域.这也是比較常有的布局方式. 使用 ...

  10. [转]Getting started with SSIS - Part 10: Event Handling and Logging

    本文转自:http://beyondrelational.com/modules/12/tutorials/24/tutorials/9686/getting-started-with-ssis-pa ...