iOS Object-C基础整理

2022-01-21  本文已影响0人  笨鱼天阳

新手入门
请多指教

前言

虽然这些东西都比较基础,说实话,算是有点老旧了,但是记不住啊,只好再整理整理。
本文仅以简单示例,详情以后再慢慢整理。

UIView 隐藏显示

Button.hidden = YES;
Button.hidden = NO;

Layer 简单动画

// x 轴缩放
CABasicAnimation *scaleX = [CABasicAnimation animationWithKeyPath:@"transform.scale.x"];

scaleX.duration=2;

scaleX.fromValue = [NSNumber numberWithFloat:0];

scaleX.toValue = [NSNumber numberWithFloat:1];

scaleX.removedOnCompletion = YES;

 [view.layer addAnimation:scaleX forKey:@"scaleX"];

JSON转换

+ (NSString *)convertToJsonData:(NSDictionary *) dict {
    NSError *error;
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dict 
                                        options:NSJSONWritingSortedKeys 
                                        error:&error];
    NSString *jsonString;
    if (!jsonData) {
        NSLog(@"%@",error);
    } else {
        jsonString = [[NSString alloc]initWithData:jsonData encoding:NSUTF8StringEncoding];
    }
    return jsonString;
}

字体加粗

// 加粗
[UILabel setFont:[UIFont fontWithName:@"Helvetica-Bold" size:15]];

// 加粗斜体
[UILabel setFont:[UIFont fontWithName:@"Helvetica-BoldOblique" size:15]];

布局约束

[view mas_makeConstraints:^(MASConstraintMaker *make) {
    make.top.bottom.mas_equalTo(self.mas_top).with.offset(10); // 偏移
    make.right.bottom.mas_equalTo(self.mas_right).with.offset(-10); // 右偏移
    make.center.mas_equalTo(self.mas_center);
    // 乘数百分比倍数
    make.height.mas_equalTo(view.mas_width).multipliedBy(3);
 
    // make.width.height.mas_equalTo(1000).multipliedBy(0.2); // 百分比 

    // 除数百分比 dividedBy(0.2) == multipliedBy(5)
    make.width.height.mas_equalTo(1000).dividedBy(0.2);  
    make.width.height.lessThanOrEqualTo(self);
dividedBy
  }];

UIView 加边框

view.layer.masksToBounds = YES;
view.layer.borderColor = [[UIColor blackColor] CGColor];
view.layer.borderWidth = 1.0;

分割字符串

// 逗号分割字符串
NSArray *listArr = [listStr componentsSeparatedByString:@","];

反转数组

NSArray *reverList = [[arr reverseObjectEnumerator] allObjects];

UIViewController的生命周期

延迟执行

不止下方一种哈,还有很多,比如NSTimer。
还有待研究。

// 延迟2s执行 refreshData 方法
[self performSelector:@selector(refreshData) withObject:nil afterDelay:2.0];

// 取消执行 refreshData 方法
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshData) object:nil];

// 取消执行所有延迟类方法
[NSObject cancelPreviousPerformRequestsWithTarget:self];

上一篇下一篇

猜你喜欢

热点阅读