You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
147 lines
3.8 KiB
147 lines
3.8 KiB
![]()
2 years ago
|
//
|
||
|
// ACBaseViewController.m
|
||
|
// AnyChatFeatures
|
||
|
//
|
||
|
// Created by Bairui on 2019/6/10.
|
||
|
// Copyright © 2019年 GuangZhou BaiRui NetWork Technology Co.,Ltd. All rights reserved.
|
||
|
//
|
||
|
|
||
|
#import "ACBaseViewController.h"
|
||
|
|
||
|
@interface ACBaseViewController ()
|
||
|
|
||
|
@end
|
||
|
|
||
|
@implementation ACBaseViewController
|
||
|
|
||
|
- (void)viewDidLoad {
|
||
|
[super viewDidLoad];
|
||
|
// Do any additional setup after loading the view.
|
||
|
|
||
|
[self p_configLeftItem];
|
||
|
|
||
|
}
|
||
|
|
||
|
-(void)viewWillAppear:(BOOL)animated {
|
||
|
|
||
|
[super viewWillAppear:animated];
|
||
|
|
||
|
self.navigationController.navigationBarHidden = NO;
|
||
|
|
||
|
UIColor *color = [UIColor colorWithRed:0 green:139 / 255.0 blue:227 / 255.0 alpha:1];
|
||
|
CGFloat alpha = [self navBarTranslucent] ? 0 : 1;
|
||
|
UIImage *image = [ACBaseViewController createImageWithColor:[color colorWithAlphaComponent:alpha]];
|
||
|
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
|
||
|
self.navigationController.navigationBar.shadowImage = image;
|
||
|
|
||
|
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
-(BOOL)navBarTranslucent {
|
||
|
|
||
|
return NO;
|
||
|
}
|
||
|
|
||
|
- (void)p_configLeftItem {
|
||
|
|
||
|
if(![self needLeftItem])
|
||
|
return;
|
||
|
|
||
|
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
|
||
|
[button addTarget:self action:@selector(navLeftClick) forControlEvents:UIControlEventTouchUpInside];
|
||
|
[button setImage:[UIImage imageNamed:@"icon_back"] forState:UIControlStateNormal];
|
||
|
[button sizeToFit];
|
||
|
|
||
|
UIBarButtonItem *leftItem = [[UIBarButtonItem alloc] initWithCustomView:button];
|
||
|
self.navigationItem.leftBarButtonItem = leftItem;
|
||
|
}
|
||
|
|
||
|
- (BOOL)needLeftItem {
|
||
|
|
||
|
if(self.presentingViewController) {
|
||
|
|
||
|
return YES;
|
||
|
} else if(self.navigationController.viewControllers > 0 && self.navigationController.viewControllers[0] != self) {
|
||
|
|
||
|
return YES;
|
||
|
}
|
||
|
|
||
|
return NO;
|
||
|
}
|
||
|
|
||
|
|
||
|
- (void)navLeftClick {
|
||
|
|
||
|
if(self.presentingViewController) {
|
||
|
|
||
|
[self dismissViewControllerAnimated:YES completion:nil];
|
||
|
} else {
|
||
|
|
||
|
[self.navigationController popViewControllerAnimated:YES];
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
-(BOOL)prefersStatusBarHidden {
|
||
|
|
||
|
return NO;
|
||
|
}
|
||
|
|
||
|
-(UIStatusBarStyle)preferredStatusBarStyle {
|
||
|
|
||
|
return UIStatusBarStyleLightContent;
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
- (BOOL)shouldAutorotate {
|
||
|
return NO;
|
||
|
}
|
||
|
//返回直接支持的方向
|
||
|
- (UIInterfaceOrientationMask)supportedInterfaceOrientations{
|
||
|
return UIInterfaceOrientationMaskPortrait;
|
||
|
}
|
||
|
//返回最优先显示的屏幕方向
|
||
|
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
|
||
|
return UIInterfaceOrientationPortrait;
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
- (void )showAutoDismissAlertView:(NSString *)Title : (NSString *)subTitle {
|
||
|
|
||
|
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:Title
|
||
|
message:subTitle
|
||
|
delegate:self
|
||
|
cancelButtonTitle:nil
|
||
|
otherButtonTitles:nil,nil];
|
||
|
[alertView show];
|
||
|
|
||
|
[self performSelector:@selector(p_dimissAlertView:) withObject:alertView afterDelay:1.5];
|
||
|
}
|
||
|
|
||
|
- (void)p_dimissAlertView:(UIAlertView *)alert {
|
||
|
|
||
|
if(alert){
|
||
|
[alert dismissWithClickedButtonIndex:[alert cancelButtonIndex] animated:YES];
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
+(UIImage*) createImageWithColor:(UIColor*) color
|
||
|
{
|
||
|
CGRect rect=CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);
|
||
|
UIGraphicsBeginImageContext(rect.size);
|
||
|
CGContextRef context = UIGraphicsGetCurrentContext();
|
||
|
CGContextSetFillColorWithColor(context, [color CGColor]);
|
||
|
CGContextFillRect(context, rect);
|
||
|
UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext();
|
||
|
UIGraphicsEndImageContext();
|
||
|
return theImage;
|
||
|
}
|
||
|
|
||
|
@end
|