1、全局变量

static NSInteger kImageHeight = 300;

#define kImageHeight 300

2、通知中心

开始编辑

UITextViewTextDidBeginEditingNotification

正在更改

UITextViewTextDidChangeNotification

结束编译

UITextViewTextDidEndEditingNotification

//注册文字改变通知

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textDidChangeNotifition:) name:UITextViewTextDidChangeNotification object:nil];

- (void)dealloc

{

[[NSNotificationCenter defaultCenter] removeObserver:self name:UITextViewTextDidChangeNotification object:nil];

}

3、动态加载(不用导入头文件)

NSArray * vcNames1 = @[@"FriendViewController"];

NSArray * vcNames2 = @[@"SwipeViewController",@"SharkViewController"];

self.viewControllers = @[vcNames1,vcNames2];

NSString * vcName = self.viewControllers[indexPath.section][indexPath.row];

UIViewController * vc = [[NSClassFromString(vcName) alloc] init];

例如:自定义Button类:UIButton

在viewController 声称对应button对象 进行重写init方法来定义 类型

不能在button类中写button属性 因为在懒加载中 添加点击事件 调不到

4、更改图片颜色; 忽略它的颜色信息

image = [image imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];

5、项目结构

6、 当导航视图控制器压栈时,隐藏tabbar

vc.hidesBottomBarWhenPushed = YES;

7、图片加边框,代码:

imageLayer.borderColor = [UIColor grayColor].CGColor;  //边框颜色
imageLayer.borderWidth = 2.0; //边框宽度
8、磊神教学Block

(1)声明block变量并设置返回值类型

typedef NSString *(^MYBlock)(NSString *);

@property (nonatomic, copy) MYBlock block;

(2)调用Block方法(发送),并接收返回值

NSString * string = self.block(@"123”);

NSLog(@“%@“,string);

(3)调用Block方法(接收),并接收返回值

self.ceshi.block =  ^ (NSString *string) {

NSLog(@"%@",string);

return@“peng";

};

(4)利用typedef定义block类型(和指向函数的指针很像)

(类)Typedef int(^MyBlock)(int ,int);

以后就可以利用这种类型来定义block变量了。

(类)MyBlock block1,block2;

(类)int i = block1(3,4);

(主)block1=^(int a,int b){

return a-b;

};

__weak ViewController *mySelf = self; block中避免循环引用

iOS 犄角旮旯的知识的更多相关文章

  1. IOS开发基础知识碎片-导航

    1:IOS开发基础知识--碎片1 a:NSString与NSInteger的互换 b:Objective-c中集合里面不能存放基础类型,比如int string float等,只能把它们转化成对象才可 ...

  2. iOS网络相关知识总结

    iOS网络相关知识总结 1.关于请求NSURLRequest? 我们经常讲的GET/POST/PUT等请求是指我们要向服务器发出的NSMutableURLRequest的类型; 我们可以设置Reque ...

  3. iOS网络基础知识

    iOS网络基础知识 1.一次HTTP请求的完整过程 (1)浏览器或应用发起Http请求,请求包含Http请求Http(请求),地址(url),协议(Http1.1)请求为头部 (2)web服务器接收到 ...

  4. iOS底层基础知识-文件目录结构

    一:iOS沙盒知识 出于安全考虑,iOS系统把每个应用以及数据都放到一个沙盒(sandbox)里面,应用只能访问自己沙盒目录里面的文件.网络资源等(也有例外,比如系统通讯录.照相机.照片等能在用户授权 ...

  5. iOS开发——总结篇&IOS开发基础知识

    IOS开发基础知识 1:Objective-C语法之动态类型(isKindOfClass, isMemberOfClass,id) 对象在运行时获取其类型的能力称为内省.内省可以有多种方法实现. 判断 ...

  6. iOS中多线程知识总结(一)

    这一段开发中一直在处理iOS多线程的问题,但是感觉知识太散了,所以就把iOS中多线程的知识点总结了一下. 1.基本概念 1)什么是进程?进程的特性是什么? 进程是指在系统中正在运行的一个应用程序.   ...

  7. IOS开发基础知识--碎片7

    三十八:各个版本IPHONE分辨率及图片的实现原理 desert@2x : iPhone 4s ( x ) desert-568h@2x : iPhones , 5C and 5S ( x ) des ...

  8. IOS开发基础知识--碎片13

    1:运行程序报the file couldn't be opened because you don't have permission to view it 解决办法:项目—>targets- ...

  9. IOS开发基础知识--碎片33

    1:AFNetworking状态栏网络请求效果 直接在AppDelegate里面didFinishLaunchingWithOptions进行设置 [[AFNetworkActivityIndicat ...

随机推荐

  1. POJ3080Blue Jeans(暴力)

    开始做字符串专题,地址 第一题水题,暴力就可以做 #include <map> #include <set> #include <stack> #include & ...

  2. 欧几里德&扩展以及求解线性方程学习总结--附上poj1061解题报告

    欧几里德算法: 欧几里德就是辗转相除法,调用这个gcd(a,b)这个函数求解a,b的最大公约数 公式: gcd(a,b)=gcd(b,a%b):并且gcd(a,b)=gcd(b,a)=gcd(-a,b ...

  3. CSS line-height 和 vertical-align 精解(上篇)

    声明本文转自:http://hi.baidu.com/wolongxzg/item/a39ef8299c984283af48f5b0 line-height属性的具体定义列表如下: 语法: line- ...

  4. 配置IIS服务器,.apk文件下载

    iis中支持下载apk文件, 发布的网站上右键->属性->HTTP头->下方有个按钮叫[MIME类型]->添加:两个栏, 扩展名填写: .apk MIME类型填写: 扩展名为 ...

  5. .net基础知识

    1.private.protected.public.internal修饰符的访问权限  Private:私有成员,只能在当前类中才可以访问  Protected:保护成员,在当前类和继承类中访问  ...

  6. 用DataBaseMail发图片并茂的邮件

    不知道各位的老板有没有这样的要求, 一些系统中的数据需要定时发出邮件提醒, 如呆料就要到期或者一些待办的事项提醒. 当然这些用SSRS报表订阅可以实现,但有些公司没有设定相应的报表服务,又或者只是一些 ...

  7. 通俗理解C#委托和事件

    引言 委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易.它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去 ...

  8. Flex4 DataGrid ItemRenderer内嵌方式

    Flex4 DataGrid ItemRenderer像Flex3一直内嵌ItemRenderer会报空对象引用的错误,如: <s:GridColumn dataField="titl ...

  9. CANBus Determining Network Baud Rate, Automatic bit-rate detection

    http://www.canbushack.com/blog/index.php?title=determining-network-baud-rate Determining Network Bau ...

  10. PL/pgSQL学习笔记之五

    http://www.postgresql.org/docs/9.1/static/plpgsql-declarations.html 39.3. 声明 块中使用的所有的变量必须在块的声明节中进行声明 ...