我最近安装了一个新的Cocoapod ChameleonFramework,然后我就在框架中遇到错误。它在告诉我
'appearanceWhenContainedIn:'已弃用:首先在iOS中弃用 9.0 - 使用+ appearanceWhenContainedInInstancesOfClasses:而不是
我真的不知道该怎么做,而且这段代码是用Objective-C编写的,我对Objective-C的了解并不多,我只知道Swift。因此,任何帮助将不胜感激。以下是导致错误的代码:
#import "UIAppearance+Swift.h"
@implementation UIView (UIViewAppearance_Swift)
+ (instancetype)appearanceWhenContainedWithin: (NSArray *)containers {
NSUInteger count = containers.count;
NSAssert(count <= 10, @"The count of containers greater than 10 is not supported.");
return [self appearanceWhenContainedIn:
count > 0 ? containers[0] : nil,
count > 1 ? containers[1] : nil,
count > 2 ? containers[2] : nil,
count > 3 ? containers[3] : nil,
count > 4 ? containers[4] : nil,
count > 5 ? containers[5] : nil,
count > 6 ? containers[6] : nil,
count > 7 ? containers[7] : nil,
count > 8 ? containers[8] : nil,
count > 9 ? containers[9] : nil,
nil];
}
@end
这似乎是一个非常简单的问题,但我真的不太了解Objective-C,所以解决这个问题的任何帮助都会帮助我很多!
答案 0 :(得分:0)
编写这个CocoaPod的人是为了让它保持最新;联系他们。同时,这不是你的代码,所以什么都不做。代码现在可以正常工作,因此不需要执行任何操作。
答案 1 :(得分:0)
当然,不建议您更改您不认识的人的代码。但是最终 有人面临此警告:
只需将appearanceWhenContainedIn:
替换为appearanceWhenContainedInInstancesOfClasses:
。
例如
// old code
[[UIScrollView appearanceWhenContainedIn:[self class], nil]
setBackgroundColor:[UIColor whiteColor]];
// new code
[[UIScrollView appearanceWhenContainedInInstancesOfClasses:@[[self class]]]
setBackgroundColor:[UIColor whiteColor]];