iOS开发知识点 - 01

设置搜索栏取消按钮颜色和标题

// 设置UISearchBar的取消按钮颜色
[[UIBarButtonItem appearanceWhenContainedIn:[UISearchBar class], nil] setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor whiteColor]} forState:UIControlStateNormal];
[[UIBarButtonItem appearanceWhenContainedIn:[UISearchBar class], nil] setTitle:@"取消"];


图片上传给服务器的图片显示方向出问题

UIImage *portraitImg = [info objectForKey:UIImagePickerControllerOriginalImage];
// 重新生成原图,去除图片的横、竖等属性
UIGraphicsBeginImageContext(portraitImg.size);
[portraitImg drawInRect:CGRectMake(0, 0, portraitImg.size.width, portraitImg.size.height)];
UIImage *reSizeImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();


UIBarButtonItem设置显示原图icon

[self.rightBarButton setImage:[[UIImage imageNamed:@"nav_discover"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];


修改图片Image的颜色

UIImageView *imageView = [[UIImageViewalloc] initWithImage:[[UIImageimageNamed:@"noti_fail_white"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]];
    imageView.frame = CGRectMake(0, 0, 45, 70);
    imageView.contentMode = UIViewContentModeScaleAspectFit;
    imageView.clipsToBounds = YES;
    UIColor *color = UIColorFromHexString(@"96A2A4");
    [imageView setTintColor:color];


在Objective-C项目中使用Swift类

需要设置
1、Build Settings -> Defines Module -> YES
2、Build Setting -> Product Module Name -> 项目名称
3、导入 #import “项目名称-Swift.h”


Objective-C判断系统版本

// 判断系统版本是否大于或等于版本N
public let SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO:(String) -> Bool = {(version) in
    return UIDevice.currentDevice().systemVersion.compare(version, options: .NumericSearch, range: nil, locale: nil) != .OrderedAscending
}

// 判断系统版本是否等于版本N
public let SYSTEM_VERSION_EQUAL_TO:(String) -> Bool = {(version) in
    return UIDevice.currentDevice().systemVersion.compare(version, options: .NumericSearch, range: nil, locale: nil) == .OrderedSame
}

// 判断系统版本是否大于版本N
public let SYSTEM_VERSION_GREATER_THAN:(String) -> Bool = {(version) in
    return UIDevice.currentDevice().systemVersion.compare(version, options: .NumericSearch, range: nil, locale: nil) == .OrderedDescending
}

// 判断系统版本是否小于版本N
public let SYSTEM_VERSION_LESS_THAN:(String) -> Bool = {(version) in
    return UIDevice.currentDevice().systemVersion.compare(version, options: .NumericSearch, range: nil, locale: nil) == .OrderedAscending
}

// 判断系统版本是否小于或等于版本N
public let SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO:(String) -> Bool = {(version) in
    return UIDevice.currentDevice().systemVersion.compare(version, options: .NumericSearch, range: nil, locale: nil) != .OrderedDescending
}

// 判断系统版本是否大于或等于iOS8
public var IOS_8_OR_LATER: Bool {
    return SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO("8")
}

// 判断系统版本是否大于或等于iOS9
public var IOS_9_OR_LATER: Bool {
    return SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO("9")
}


UIButton 按钮 拖拽

[self.button addTarget:self action:@selector(imageMoved:withEvent:) forControlEvents:UIControlEventTouchDragInside];

- (IBAction)imageMoved:(id) sender withEvent:(UIEvent *) event
{
    CGPoint point = [[[event allTouches] anyObject] locationInView:self.view];
    UIControl *control = sender;
    control.center = point;
}

参考: http://stackoverflow.com/questions/4707858/basic-drag-and-drop-in-ios


图片UIImage上半部分圆角

CGRect rect = CGRectMake(0, 0, DeviceWidth * 0.8, DeviceWidth * 0.8);

// 设置圆角位置
UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect:rect byRoundingCorners: (UIRectCornerTopLeft | UIRectCornerTopRight) cornerRadii: CGSizeMake(8, 8)];

CAShapeLayer *maskLayer = [[CAShapeLayer alloc] init];
maskLayer.frame = rect;
maskLayer.path = maskPath.CGPath;
self.adImageView.layer.mask = maskLayer;

猜你喜欢

转载自blog.csdn.net/h1101723183/article/details/79240796