zoukankan      html  css  js  c++  java
  • CGGeometry Reference (一)

    知识点 frame 与bounds 的区别

    1.frame 是这个视图的大小在父视图的位置 。 如x 20 y 20  width 200 height 300

    2.bounds 是这个视图的大小在自身的位置 。 如 x 0  y  0  width 200 height 300  ,bounds 的x,y 永远为0.

    3.CGRectUnion  接受两个CGRect 结构体作为参数并且返回一个能够包含这两个矩形的最小矩形,听起来可能没什么,我相信你也可以用几行代码轻松实现这个功能,不过 CGGeometry 做的是给你提供一些方法让你的代码更干净、可读性更强。

    // CGRectUnion

    CGRect frame1 = CGRectMake(80.0, 100.0, 150.0, 240.0);

    CGRect frame2 = CGRectMake(140.0, 240.0, 120.0, 120.0);

    CGRect frame3 = CGRectUnion(frame1, frame2);

    UIView *view1 = [[UIView alloc] initWithFrame:frame1];

    [view1 setBackgroundColor:[UIColor redColor]];

    UIView *view2 = [[UIView alloc] initWithFrame:frame2];

    [view2 setBackgroundColor:[UIColor orangeColor]];

    UIView *view3 = [[UIView alloc] initWithFrame:frame3];

    [view3 setBackgroundColor:[UIColor grayColor]];

    [self.view addSubview:view3];

    [self.view addSubview:view2];

    [self.view addSubview:view1];

    4.CGRectDivide 它帮你把一个给定矩形分割成两个

    // CGRectDivide

    CGRect frame = CGRectMake(10.0, 50.0, 300.0, 300.0);

    CGRect part1;

    CGRect part2;

    CGRectDivide(frame, &part1, &part2, 100.0, CGRectMaxYEdge);

    UIView *view1 = [[UIView alloc] initWithFrame:frame];

    [view1 setBackgroundColor:[UIColor grayColor]];

    UIView *view2 = [[UIView alloc] initWithFrame:part1];

    [view2 setBackgroundColor:[UIColor orangeColor]];

    UIView *view3 = [[UIView alloc] initWithFrame:part2];

    [view3 setBackgroundColor:[UIColor redColor]];

    [self.view addSubview:view1];

    [self.view addSubview:view2];

    [self.view addSubview:view3];

    比较和包含

    用下面六个方法来比较几何结构和检查包含关系非常简单。

    • CGPointEqualToPoint
    • CGSizeEqualToSize
    • CGRectEqualToRect
    • CGRectIntersectsRect
    • CGRectContainsPoint
    • CGRectContainsRect

    CGGeometry Reference 还有一些其他宝贝,比如CGPointCreateDictionaryRepresentation可以用来将一个 CGPoint 结构体转换为一个 CGDictionaryRef,CGRectIsEmpty可以用来检查一个矩形的宽高是否都为零。更多详情请看[《CGGeometry Reference 文档》]()。

    将来的自己,会感谢现在不放弃的自己!
  • 相关阅读:
    jQuery初级篇
    DOM初级篇
    CSS基础篇
    javascript 初级篇
    HTML 基础篇
    Oracle文章中常用数据表的描述
    Oracle视图基础
    Oracle序列简单应用
    Oracle关联查询关于left/right join的那点事
    赋值和算术运算符
  • 原文地址:https://www.cnblogs.com/TheYouth/p/5393660.html
Copyright © 2011-2022 走看看