Objective-C基础笔记(7)Foundation中的常用结构体
2024-08-24 09:55:14
一、NSRange
NSRange的定义:
typedef struct _NSRange {
NSUInteger location;
NSUInteger length;
} NSRange;
NSRanage的使用:
NSRange range = NSMakeRange(8, 10); NSLog(@"location:%zi", range.location);
NSLog(@"length:%zi", range.length); NSString *str = NSStringFromRange(range);
NSLog(@"%@", str);
二、NSPoint
NSPoint的定义:
typedef CGPoint NSPoint;
struct CGPoint {
CGFloat x;
CGFloat y;
};
typedef struct CGPoint CGPoint;
NSPoint的使用:
NSPoint p;
p.x = 10;
p.y = 10; p = NSMakePoint(11, 11); //常见的方式
p = CGPointMake(12, 12); NSString * str = NSStringFromPoint(p);
NSLog(@"%@", str);
三、NSSize
NSSize的定义:
typedef CGSize NSSize;
struct CGSize {
CGFloat width;
CGFloat height;
};
typedef struct CGSize CGSize;
NSSize的使用:
NSSize s;
s.width = 100.1;
s.height = 100.3; s = NSMakeSize(12.3, 16.9); s = CGSizeMake(15.3, 19.2); NSString *str = NSStringFromSize(s);
NSLog(@"%@", str);
四、NSRect
NSRect的定义:
typedef CGRect NSRect;
struct CGRect {
CGPoint origin;
CGSize size;
};
typedef struct CGRect CGRect;
NSRect的使用:
NSRect r;
//r.origin.x = 11;
//r.origin.y = 13;
r.origin = NSMakePoint(50, 50);
r.size = NSMakeSize(60, 60); r = NSMakeRect(20, 20, 30, 30);
最新文章
- 基于 Eclipse 的 MapReduce 开发环境搭建
- 自定义 Material Design风格的提示框
- fis3-postpackager-loader插件说明
- Hadoop YARN资源隔离技术
- eclipse中导入项目后中文成乱码解决办法
- 使用MySql数据库, 浏览器接收返回数据报错SyntaxError: unterminated string literal
- Hadoop SPARK 环境搭建
- 点击鼠标获取元素ID
- iOS基础 - 多线程线程
- 创业类网站建设日志1——搭建服务器svn以及前端开发环境
- AFM论文精读
- Deep Learning.ai学习笔记_第五门课_序列模型
- ThinkingInJava 学习 之 0000003 控制执行流程
- 【做题】agc003E - Sequential operations on Sequence——经典结论
- matlab函数拟合
- Code Blocks中配置OpenGL
- 安装window系统
- Laravel 文件上传失败的问题 error 7
- 使用服务器上的Jupyter notebook。
- Bash拾遗:变量
热门文章
- 第二十四天 框架之痛-Spring MVC(四)
- 用typename和template消除歧义
- java 处理word文档 (含图片,表格内容)
- JVM-java字符编码
- WITH common_table_expression (Transact-SQL)
- .net framework tools
- C/C++(C++拷贝构造器,赋值运算符重载)
- react基础用法一(在标签中渲染元素)
- 紫书 例题 9-8 UVa 1625 (滚动数组+公共字符串处理)
- android启动模式对于体验的影响