MUKit - MUNavigation 轻量 简单 易用 的导
MUKit系列包含但不限于以下框架。
MUTableViewManager pod 'MUKit/TableViewManager'
MUNetworking pod 'MUKit/Networking'
MUNavigation pod 'MUKit/Navigation'
MUSignal pod 'MUKit/Signal'
MUEPaymentManager pod 'MUKit/EPaymentManager'
MUShared pod 'MUKit/Shared'
MUCarousel pod 'MUKit/Carousel'
MUEncryption pod 'MUKit/Encryption'
MUCollectionViewManager pod 'MUKit/CollectionViewManager'
MUPopupController pod 'MUKit/PopupController'
MUPaperView pod 'MUKit/PaperView'
详细注释和案例稍后逐步更新.......
MUNavigation 导航框架原理(与其它导航框架的区别)
MUNavigation的原理是不直接对Navigation bar操作,而是把navigation bar的样式存储在UIViewController里,当UIViewController调用-(void)viewWillAppear:(BOOL)animated时,一次性设置当前UIViewController的navigation bar样式,这样每个UIViewController的navigation bar样式就是相互独立的,互不影响。当UIViewController没有设置任何Navigation bar样式时,他就会取UIViewController的UINavigationController(全局设置)的Navigation bar样式,作为当前UIViewController的Navigation bar样式。UIViewController只需设置一次Navigation bar的样式代码,无需考虑UIViewController间的Navigation bar样式影响。大量节省代码和时间,集中精力处理业务. MUNavigation里只有一个UIViewController (MUNavigation)分类文件,里面可以配置一些属性
@property(nonatomic, assign)BOOL navigationBarTranslucentMu;//透明导航栏
@property(nonatomic, assign)CGFloat navigationBarAlphaMu;//透明度
@property(nonatomic, assign)BOOL navigationBarHiddenMu;//隐藏导航栏
@property(nonatomic, strong)UIColor *navigationBarBackgroundColorMu;//背景颜色
@property(nonatomic, strong)UIImage *navigationBarBackgroundImageMu;//背景图片
@property(nonatomic, assign)BOOL navigationBarShadowImageHiddenMu;//隐藏阴影线
@property(nonatomic, strong)UIColor *titleColorMu;//标题颜色
@property(nonatomic, strong)UIColor *navigationBarTintColor;//控件颜色
@property(nonatomic, assign)UIStatusBarStyle statusBarStyleMu;//电池电量条,没有导航控制器的情况下使用
@property(nonatomic, assign)UIBarStyle barStyleMu;//电池电量条,有导航控制器的情况下使用
@property(nonatomic, strong)UIImage *backIndicatorImageMu;//返回按钮图片
@property(nonatomic, assign)BOOL showBackBarButtonItemText;//是否显示返回按钮文字
@property(nonatomic, assign ,readonly)CGFloat navigationBarAndStatusBarHeight;//导航条和电池电量条高度
@property(nonatomic, readonly)UILabel *titleLabel;//自定义标题
@property(nonatomic, strong)UIView *titleViewMu;//自定义titleView
@property(nonatomic, strong)UIFont *titleFontMu;//标题字体
@property(nonatomic, assign)CGFloat navigationBarTranslationY;//导航在y轴方向上偏移距离
属性虽然看起来有点多,但其实都是UINavigationBar和UIController的一些常用属性。实际用起来也很简单,如下代码所示就对一个UINavigationController内的所有UIViewController的UINavigationBar样式做了统一处理。
navigationController.barStyleMu = UIBarStyleBlack;//设置电池电量条的样式
navigationController.navigationBarBackgroundImageMu = [UIImage imageFromColorMu:[UIColor colorWithRed:250./255. green:25./255. blue:64./255. alpha:1.]];//导航条的图片
navigationController.navigationBarTintColor = [UIColor whiteColor];//返回按钮箭头颜色
navigationController.titleColorMu = [UIColor whiteColor];//标题颜色
self.window.rootViewController = navigationController;
如果想控制单个UIViewController的样式,在 viewDidLoad 中通过分类配置想要的效果即可
@implementation DemoController
- (void)viewDidLoad {
[super viewDidLoad];
self.navigationBarHiddenMu = YES;//隐藏
self.statusBarStyleMu = UIStatusBarStyleDefault;//更改电池电量条样式
}
MUNavigation 使用介绍
navigation_a.gif navigation_h.gif navigation_s.gif navigation_t.gif navigation_x.gif完整案例:
Github:https://github.com/Jeykit/MUKit
MUKit 系列
案例代码下载:http://code.cocoachina.com/view/137183
MUSignal(信号事件):https://www.jianshu.com/p/1c11e10aa126
MUTableViewManager(MVVM Tableview):https://www.jianshu.com/p/fd969f95e1e9
MUNetworking(网络框架):https://www.jianshu.com/p/bca6652fea9a