我收到警告不兼容的指针类型将'Class'发送到“delegate:self”行中的'id'类型的参数:
+ (SHKActionSheet *)actionSheetForType:(SHKShareType)type
{
SHKActionSheet *as = [[SHKActionSheet alloc] initWithTitle:SHKLocalizedString(@"Share")
delegate:self
cancelButtonTitle:nil
destructiveButtonTitle:nil
otherButtonTitles:nil];
as.item = [[[SHKItem alloc] init] autorelease];
as.item.shareType = type;
此警告在ShareKit中,如果有人知道如何修复它,请告诉我!
答案 0 :(得分:21)
您正尝试在静态方法中传递self参数。这是不正确的,因为静态方法中没有此对象的特定实例。使其成为非静态方法或将此类的一些实例作为委托传递。
答案 1 :(得分:8)
使用静态类时,您可以手动获取警告:
delegate:(id<UIActionSheetDelegate>)self
答案 2 :(得分:4)
尝试使用nil而不是self(xcode 4.2 iOS 5)。