使用可达性的语义问题
Posted
技术标签:
【中文标题】使用可达性的语义问题【英文标题】:Semantic Issue using Reachability 【发布时间】:2013-02-17 03:36:30 【问题描述】:我已经被这个语义问题警告困扰了一个星期了,而且越来越令人沮丧。 有人愿意看看吗?任何建议都将被亲切地采纳。
WebViewController.m
#import "WebViewController.h"
#import "Reachability.h"
@implementation WebViewController
@synthesize webView;
@synthesize backbtn;
@synthesize forwardbtn;
@synthesize webAddy;
@synthesize activityIndicator;
@synthesize loadingLabel;
- (void)viewDidLoad
loadingLabel.hidden = YES;
backbtn.enabled = NO;
forwardbtn.enabled = NO;
webView.scalesPageToFit = YES;
activityIndicator.hidesWhenStopped = YES;
if([Reachability currentReachabilityStatus] == NotReachable)
UIAlertView *av = [[[UIAlertView alloc]
initWithTitle:@"Sorry"
message:@"You are not connected to the internet. Please Try again"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil] autorelease];
[av setDelegate:self];
[av show];
else
NSURL *url = [NSURL URLWithString:webAddy];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[webView loadRequest:requestObj];
[super viewDidLoad];
警告将我重定向到第 20 行。 编译器告诉我: "类方法 '+currentReachabilityStatus" 未找到(返回类型默认为 'id')"
如果需要更多信息,请告诉我。再次感谢大家!
【问题讨论】:
您是从哪里获得可达性实现的? @implementation Reachability 位于 Reachability.m 文件中。 【参考方案1】:见here。
- (NetworkStatus) currentReachabilityStatus;
不是类方法。
【讨论】:
我知道 currentReachabilityStatus 是一个 NSObject,但是我需要做什么来纠正这个问题?【参考方案2】:使用[[Reachability reachabilityForInternetConnection] currentReachabilityStatus]
代替[Reachability currentReachabilityStatus]
。
currentReachabilityStatus
是一个实例方法,所以首先需要一个实例。
【讨论】:
同样的错误仍然存在,只是没有告诉我:“找不到类方法'+currentReachabilityStatus'”它告诉我...“找不到类方法'+reachabilityForInternetConnection'” @Sambo 请发布您的Reachability.h
。以上是关于使用可达性的语义问题的主要内容,如果未能解决你的问题,请参考以下文章