八、Foundation -常用结构体
一、NSRange
在foundation/NSRange.h中对NSRange的定义
typedef struct _NSRange{
NSUInteger location;
NSUInteger length;
} NSRange;
//typedef unsigned long NSUIntegr;
这个结构体用来表示事物的一个范围,通常是字符串里的字符范围或者集合里的元素范围
location表示该范围的起始位置
length表示该范围内所含的元素个数
三种方式创建一个NSRange变量
1、直接给成员赋值
NSRang range;
range.location = 8;
range.length = 3;
2、应用C语言的聚合结构赋值机制
NSRange range = {7,3};
或者 NSRange range = {.lcation = 8,.length = 3};
3、Foundation框架提供的一个快捷韩函数NSMakeRane
NSRange range = NSMakeRange(7,3);
二、NSPoint(CGPoint)位置
NSPoint p ;
p.x=10;
p.y=5;
快速创建方法
NSPoint p = NSMakePoint(2,10);
或者p = CGPointMake(2,10);
打印
NSString *str = NSStringFormPoint(p);
NSLog(@"%@",str);
三、NSSize(CGSize)宽度和高度
NSSize size;
size.width=100;
size.height=90;
size = NSMakeSize(90,100);
size =CGSizeMake(10,20);
打印
NSString *str = NSStringFormPoint(size) ;
NSLog(@"%@",str);
四。NSRect (CGRect) 包含了点,包含了宽度
sturct CGRect{
CGPotin origin;
CGSize size;
}
NSRect rect ; //CGRect rect;
rect.origin.x=10;
rect.origin.y=20;//不允许rect.origin={10,20}
rect.size.width =100;
rect.size.height=36;
快速创建
rect = NSMakeRect(10,10,80,80);
或者
rect = CGRectMake(10,10,23,34);
NSString *str = NSStringFormRect(rect) ;
八、Foundation -常用结构体的更多相关文章
- 从头开始-07.Foundation框架常用结构体
一.Foundation框架常用结构体NSRange\CGRange.NSPoint\CGPoint.NSSize\CGSize. NSRect\CGRect 的使用 1. 基本使用: //NSRa ...
- foundation框架—结构体
Foundation框架—结构体 一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框 ...
- Objective-C:Foundation框架-结构体
在Foundation中定义了很多常用结构体类型来简化我们的日常开发,这些结构体完全采用Objective-C定义,和我们自己定义的结构体没有任何区别,之所以由框架为我们提供完全是为了简化我们的开发. ...
- 李洪强iOS开发之Foundation框架—结构体
Foundation框架—结构体 一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框 ...
- Foundation框架 - 结构体
一.基础知识 如果要想使用 Foundation 框架的数据类型,那么包含它的主头文件就可以了.即 #import <Foundation/Foundation.h> 补充: Core F ...
- iOS Foundation框架简介 -1.常用结构体的用法和输出
1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...
- iOS Foundation框架 -1.常用结构体的用法和输出
1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...
- [OC Foundation框架 - 1] 常用结构体
底层封装是使用了typedef定义的结构体 typedef struct _NSString{ xxx xxx } NSString; 1. NSRange 结构体 #注意结构体不是对象 3种定义 ...
- Foudation框架之一些常用结构体和常用类
表示范围作用的结构体:NSRange: 有三种方式创建新的NSRange: 1.NSRange range: range.location = 17; ...
随机推荐
- CSS 去掉inline-block元素间隙的几种方法
最近做移动端页面时,经常会用到inline-block元素来布局,但无可避免都会遇到一个问题,就是inline-block元素之间的间隙.这些间隙会导致一些布局上的问题,需要把间隙去掉.对于inlin ...
- Virtual DOM 算法
前端 virtual-dom react.js javascript 目录: 1 前言 2 对前端应用状态管理思考 3 Virtual DOM 算法 4 算法实现 4.1 步骤一:用JS对象模拟DOM ...
- C#进制转换
//十进制转二进制 Console.WriteLine(Convert.ToString(69, 2)); //十进制转八进制 Console.WriteLine(Convert.ToString(6 ...
- runtime之消息转发
前言 在上一篇文章中我们初尝了runtime的黑魔法,可以在程序编译阶段就获取到成员变量的名字,特性以及动态的给对象增加属性等等,在接下来中我们进一步了解OC的消息发送机制.如果之前没接触过runti ...
- iOS开发之网络编程--2、NSURLSessionDownloadTask文件下载
本文内容大纲: 1.回顾NSURLSessionTask 2.NSURLSessionDownloadTask大文件之block下载 3.NSURLSessionDownloadTask大文件之代理方 ...
- 用Qt开发第一个Hello World程序
配置好Qt的环境变量之后,我们才可以进行下面的通过终端来使用Qt开发这个第一个程序 因为Qt的文件路径不能有中文否则会报错,所以一般都把工程文件都建立在根目录 我们创建的Qt程序包含两个部分:1.GU ...
- iOS开发网络篇—NSURLConnection基本使用(一)
一.NSURLConnection的常用类 (1)NSURL:请求地址 (2)NSURLRequest:封装一个请求,保存发给服务器的全部数据,包括一个NSURL对象,请求方法.请求头.请求体.. ...
- mysql集群之MYSQL CLUSTER
1. 参考文档 http://xuwensong.elastos.org/2014/01/13/ubuntu-%E4%B8%8Bmysql-cluster%E5%AE%89%E8%A3%85%E5%9 ...
- [转][原]openstack-kilo--issue(六)kilo版openstack的dashboard在session超时后重新登录报错解决办法
http://blog.csdn.net/wylfengyujiancheng/article/details/50523373?locationNum=1&fps=1 1.现象描述: kil ...
- redis的info
redis的info http://redis.readthedocs.org/en/latest/server/info.html INFO INFO [section] 以一种 ...