Coder Social home page Coder Social logo

ananmshk / gknavigationbar Goto Github PK

View Code? Open in Web Editor NEW

This project forked from quintgao/gknavigationbar

0.0 0.0 0.0 2.89 MB

GKNavigationBarViewController的分类实现方式,耦合度底,使用更加便捷

License: MIT License

Ruby 0.61% Objective-C 99.39%

gknavigationbar's Introduction

GKNavigationBar

GKNavigationBarViewController的分类实现方式,耦合度底,使用更加便捷

Build Status License MIT platform languages cocoapods Carthage compatible support

Swift版本请看这里 → GKNavigationBarSwift

介绍:(本框架的特性)

  • 无侵入性,低耦合性
  • 支持自定义导航栏样式(隐藏、透明等)
  • 支持控制器开关返回手势
  • 支持控制器开关全屏返回手势
  • 支持控制器设置导航栏透明度,可实现渐变效果
  • 完美解决UITableView,UIScrollView滑动手势冲突
  • 可实现push,pop时控制器缩放效果(如:今日头条)
  • 可实现左滑push一个控制器的效果(如:网易新闻)

重要!!!

1、如果切换控制器的时候出现状态栏显示异常(一半黑一半白等) 解决办法:在控制器初始化方法里面设置状态栏样式

- (instancetype)init {
    if (self = [super init]) {
        self.gk_statusBarStyle = UIStatusBarStyleLightContent;
    }
    return self;
}

2、Xcode 11.4 在调试的时候会出现状态栏样式改变不了的情况 解决办法:在基类控制器里实现下面两个方法

- (BOOL)prefersStatusBarHidden {
    return self.gk_statusBarHidden;
}

- (UIStatusBarStyle)preferredStatusBarStyle {
    return self.gk_statusBarStyle;
}

使用说明

1、在AppDelegate中添加导航配置

[GKConfigure setupDefaultConfigure]

2、创建根导航控制器

UINavigationController *nav = [UINavigationController rootVC:[GKMainViewController new]];

3、设置导航栏属性(调用即创建)

self.gk_navBackgroundColor = [UIColor red]

更多属性及方法可在demo中查看

版本记录

  • 1.0.0 - 2020.01.14 修复设置某个导航栏间距后其他导航栏间距不准确问题
  • 0.0.5 - 2020.01.02 修复某些情况下状态栏显示异常问题
  • 0.0.4 - 2019.12.22 优化状态栏切换功能
  • 0.0.3 - 2019.11.12 修复设置导航栏左右间距无效的问题
  • 0.0.2 - 2019.11.04 优化代码,解决只调用gk_navigationItem时导航栏不出现的bug
  • 0.0.1 - 2019.11.03 对GKNavigationBarViewController做了修改,使用更方便

gknavigationbar's People

Contributors

quintgao avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.