CGRectMake

1.基础知识——三个结构体

  • CGPoint
1     /* Points. */
2
3     struct CGPoint {
4       CGFloat x;
5       CGFloat y;
6     };
7     typedef struct CGPoint CGPoint; 
  • CGSize
1   /* Sizes. */
2
3   struct CGSize {
4     CGFloat width;
5     CGFloat height;
6   };
7   typedef struct CGSize CGSize
  •  CGRect
1    /* Rectangles. */
2
3     struct CGRect {
4       CGPoint origin;//偏移是相对父窗口的
5       CGSize size;
6     };
7     typedef struct CGRect CGRect;

  这三个结构体均在一个头文件里:CGGeometry.h

2、函数介绍

  •  CGRectMake
1     CG_INLINE CGRect
2     CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat height)
3     {
4       CGRect rect;
5       rect.origin.x = x; rect.origin.y = y;
6       rect.size.width = width; rect.size.height = height;
7       return rect;
8     }  

这个函数位于上面提到的CGGeometry.h文件中。

该方法的目的是Make(画出)一个Rect(矩形),左上角为矩形的原点坐标(origin x,origin y),矩形的宽与高(width,height);

时间: 2024-11-05 09:22:46

CGRectMake的相关文章

走进swfit(二)CGRectMake

在OC里写一个动态Frame很简单,例如: btn.frame = CGRectMake(i*(320/tabArray.count), 0, 320/tabArray.count, 49); 但是到了swift里这么来写是行不通的,编译不通过,找了下写法如下 var button:UIButton = UIButton() var z = (idx)*135 var c = CGFloat(z) var x:CGFloat = 107.0 + c var frame = CGRectMake(

iphone绘图的几个基本概念CGPoint、CGSize、CGRect、CGRectMake、window(窗口)、视图(view)

我一般情况下不会使用interface builder去画界面,而是用纯代码去创建界面,不是装B,而是刚从vi转到xcode不久,不太习惯interface builder而已.当然如果需要我也会使用它.一个东西的存在没有绝对的好与坏,只是存在时间与空间决定了它的价值. (忘了讲了,我的环境是xcode4.2)首先要弄懂几个基本的概念. 一)三个结构体:CGPoint.CGSize.CGRect1.  CGPoint [plain] view plaincopy   /* Points. */

CGRectMake & CGSizeMake

CGRectMake Returns a rectangle with the specified coordinate and size values. Declaration SWIFT func CGRectMake(_ x: CGFloat,               _ y: CGFloat,               _ width: CGFloat,               _ height: CGFloat) -> CGRect OBJECTIVE-C CGRect CG

ios 键盘追加完成按钮

//键盘追加完成按钮 UIToolbar * topView = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 30)]; [topView setBarStyle:UIBarStyleDefault]; UIBarButtonItem * btnSpace = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace

RDVECore来自锐动的无UI,高度抽象化API的视频编辑SDK--IOS版

1 编写目的 预期读者: 有视频编辑开发经验或者无经验的,打算或者正在使用"锐动IOS版RDVECore"的相关工程师. iOS软件工程师. 产品经理. QA 2 名词解释 分辨率:用于计算机视频处理的图像,以水平和垂直方向上所能显示的像素数来表示分辨率.常见视频分辨率的有1080P即1920x1080,720P即1080x720,640x480等. 帧率:每秒的帧数(fps)或者说帧率表示图形处理器处理场时每秒钟能够更新的次数. 码率: 数据传输时单位时间传送的数据位数,一般我们用的

<iOS 导航栏>第一节:导航栏透明方法实现代码

说下导航栏的透明方法: 很多应用需要导航栏随着向上滑动,逐渐从透明变成不透明,很炫酷,大部分应用都在使用导航栏渐变效果,现附上代码然后直接将实现,一会讲下如何来实现,这一部分直接上代码. 先附上代码: 方法声明: #import <UIKit/UIKit.h> @interface IDSNavBarView : UIView - (instancetype)initWithFrame:(CGRect)frame titleImg:(UIImage *)aTitleImg; - (UILabe

CAEmitterLayer 粒子效果(发射器)

//创建Layer CAEmitterLayer *emitterLayer = [CAEmitterLayer layer]; //边框 emitterLayer.borderWidth = 1.0f; //尺寸 emitterLayer.frame = CGRectMake(100, 100, 100, 100); emitterLayer.masksToBounds = YES; //发射点 emitterLayer.emitterPosition = CGPointMake(0, 0);

IOS 读取xib里的子控件

interface ViewController () /**获取.plist数据*/ @property (nonatomic,strong) NSArray *aps; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; //九宫格的总列数 int totalColumns=5; //1.1个格子的尺寸 CGFloat appW=50; CGFloat appH=60; //2.计算间隙

自定义UIButton

#import <UIKit/UIKit.h> #import "UIView+SDExtension.h" @interface CookButton : UIButton @end #import "CookButton.h" @implementation CookButton - (instancetype)initWithFrame:(CGRect)frame { if (self = [super initWithFrame:frame])