我在项目中实现了这个自定义类: https://github.com/wimagguc/ios-custom-alertview
但Xcode发出警告称“initWithParentView”已被弃用。
- (id)init
{
return [self initWithParentView:NULL];
}
我无法找到这种方法的替代方案,而且这个课程非常出色。有人可以告诉我如何抑制此警告或告诉我“initWithParentView”的替代方法吗?
答案 0 :(得分:3)
请阅读更改说明,清楚地说使用init方法
编辑:因为它在无限循环中使用[super init]
而不是[self init]
- (id)init
{
// return [self init];
return [super init];
}
答案 1 :(得分:3)
看起来开发人员将此标记为已弃用,并建议使用init方法。您可以编辑第三方库以删除此属性或禁止它。也许将initWithParentView的内容移动到init中可以更好地修复库。
/*!
DEPRECATED: Use the [CustomIOS7AlertView init] method without passing a parent view.
*/
- (id)initWithParentView: (UIView *)_parentView __attribute__ ((deprecated));
答案 2 :(得分:1)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
- (void) methodUsingDeprecatedStuff {
//use deprecated stuff
}
#pragma clang diagnostic pop
这应该压制它。
答案 3 :(得分:1)
嗯,班级的* .h告诉你该怎么做
/ *! DEPRECATED:使用[CustomIOS7AlertView init]方法而不传递父视图。 * /
因此,如果您要覆盖自定义类,请使用
[self init];
否则使用
[[CustomIOS7AlertView alloc] init]