#import <UIKit/UIKit.h>
@interface BaseViewController : UIViewController
@property(nonatomic, strong) UIBarButtonItem *backItem;
- (void)backItemAction:(UIBarButtonItem *)item;
- (BOOL)isExistenceNetwork;
@end
#import "BaseViewController.h"
@interface BaseViewController ()
@property (nonatomic, strong) UIImageView * lineView;
@end
@implementation BaseViewController
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
self.lineView.hidden = YES;
}
- (void)viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];
self.lineView.hidden = NO;
}
- (void)viewDidLoad {
[super viewDidLoad];
self.lineView = [self getLineViewInNavigationBar:self.navigationController.navigationBar];
self.view.backgroundColor = [UIColor whiteColor];
[[UINavigationBar appearance] setTitleTextAttributes:@{NSForegroundColorAttributeName :[UIColor blackColor]}];
self.navigationItem.leftBarButtonItem = self.backItem;
}
- (UIBarButtonItem *)backItem {
if (!_backItem) {
_backItem = [[UIBarButtonItem alloc] initWithImage:IMAGEORIG(@"nav_back_normal") style:(UIBarButtonItemStyleDone) target:self action:@selector(backItemAction:)];
}
return _backItem;
}
- (void)backItemAction:(UIBarButtonItem *)item {
}
- (BOOL)isExistenceNetwork {
BOOL isExistenceNetwork = YES;
YWReachability *reach = [YWReachability reachabilityWithHostname:@"www.baidu.com"];
switch ([reach currentYWReachabilityStatus]) {
case NotReachable:
isExistenceNetwork = NO;
break;
case ReachableViaWiFi:
isExistenceNetwork = YES;
break;
case ReachableViaWWAN:
isExistenceNetwork = YES;
break;
default:
break;
}
return isExistenceNetwork;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
- (UIImageView*)getLineViewInNavigationBar:(UIView*)view{
if ([view isKindOfClass:UIImageView.class]&&view.bounds.size.height<=1.0) {
return (UIImageView*)view;
}
for (UIView *subview in view.subviews) {
UIImageView *imageView = [self getLineViewInNavigationBar:subview];
if (imageView) {
return imageView;
}
}
return nil;
}
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
}
@end