objective-c - Objective-C : globally available method

标签 objective-c ios cocoa-touch

我正在使用以下实现来检查是否有可用的互联网连接,并且它工作正常,但是因为我要经常检查互联网连接,所以我认为 (BOOL)reachable 方法最好是可用的无处不在,而无需每次都重写。因为我是 iOS 开发的新手,所以我不确定该怎么做。最好的方法是什么?

//
// SigninViewController.m
//

#import "Reachability.h"
#import "SigninViewController.h"

@implementation SigninViewController

...

- (IBAction)SigninTouchUpInside:(id)sender
{

    if ([self reachable])
    {
        NSLog(@"Reachable");
    }
    else
    {
        NSLog(@"Not Reachable");
    }

}

- (BOOL)reachable {
    Reachability *reachability = [Reachability reachabilityWithHostName:@"enbr.co.cc"];
    NetworkStatus internetStatus = [reachability currentReachabilityStatus];
    if(internetStatus == NotReachable) {
        return NO;
    }
    return YES;
}

@end

最佳答案

让它成为一个普通的 C 函数:

BOOL reachable()
{
    // implementation here
}

在单独的头文件中声明它并独立于任何其他类实现它,因此它可以在任何地方使用。

关于objective-c - Objective-C : globally available method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12222411/

相关文章:

objective-c - 如何将 NSMutableArray 中的字符串按字母顺序排序?

ios - 我应该如何从合适的选择中保存用户设置?

iphone - iPhone 模拟器上 Three20 链接错误

ios - iOS 中的 [Class new] 和 [[Class alloc] init] 有什么区别?

iphone - 如何访问项目中的本地文件

ios - 获取当前前台运行的应用程序(第三方)包标识符

iphone - 在 iOS 上查看大型 PDF 的最佳方式是什么?

ios - 界面生成器警告(但工作正常)

ios - 从 UIPageViewContoller 中包含的 View 设置 UINavigationBar 标题

ios - 如何在 iOS 的表格 View 中调整文本?