OC语言——Foundation框架

NSRange(location , length) 表示范围,里面有俩元素,一个是location便是位置,另一个是length长度

    // 不常用,理解就好
    NSRange r1 = {2, 4};
    NSRange r2 = {.location =2, .length = 4}; //不用
    
    // 开发中用这个,要求掌握
    NSRange r3 = NSMakeRange(2, 4);
    
    NSString *str = @"i lovde you";
    
    // 查找某个字符串在str中的位置
    // 如果找不到,length = 0;location等于一个常量NSNotFound
    NSRange range = [str rangeOfString:@"love"];
    
    NSLog(@"%ld - %ld",range.location, range.length);
    


NSPoint/CGPoint表示一个点,里面有double X和double Y.而CGPoint是跨平台的,常用这个

    CGPoint p1 = NSMakePoint(10, 10);
    
    NSPoint p2 = CGPointMake(199, 707); // 最常用的
    
    NSPoint p3 = p1; //  可以互相使用

NSSize/CGSize表示一个UI元素尺寸,里面有double wight(宽)和double height(高).构造一个UI元素,常用这个

    NSSize z1 = NSMakeSize(20, 10);
    
    CGSize z2 = NSMakeSize(100, 20);
    
    NSSize z3 = CGSizeMake(100, 30);
    

CGRect / NSRect (CGPoint CGSize) 表示位置里面有UI元素的尺寸和点


CGRect mySect(CGFloat x, CGFloat y, CGFloat width, CGFloat height)
{
    CGRect Sect;
    Sect.origin.x = x;
    Sect.origin.y = y;
    Sect.size.height = height;
    Sect.size.width = width;

    return Sect;
}

// 开发中的调试

CGRect c1 = CGRectMake(10, 10, 20, 30);
    
    NSLog(@"%f-%f-%f-%f",c1.origin.x, c1.origin.y, c1.size.width,c1.size.height);
// 也可以直接把结构体转成字符串,这样就不必书写上面的麻烦步骤了。
NSString *str =  NSStringFromPoint(p1);
    
    NSLog(@"%@",str);

// 将NSSize或者CGSize改成字符串输出
NSSize z1 = NSMakeSize(20, 10);
    
    CGSize z2 = NSMakeSize(100, 20);
    
    NSSize z3 = CGSizeMake(100, 30);
    
    
    NSString *str1 =  NSStringFromSize(z2);

    NSLog(@"%@",str1);

// 由于开发中经常用到坐标原点或者尺寸原点

// CGPointzero == CGPointMake(0, 0)
// CGSizezero == CGSizezero(0, 0)

// 比较两个点是否相同(x, y)

    BOOL b =  CGPointEqualToPoint(CGPointMake(10, 9), CGPointMake(20, 9));
// 判断这个尺寸中是包不包涵这个点

    BOOL b1 =  CGRectContainsPoint(CGRectMake(10, 10, 20, 2), CGPointMake(10, 5));


方法很多,可以尝试自己添加一些,用一些,这样才能掌握!
使用这些函数需要添加CoreGraphics框架



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值