IOS自定义导航栏Push动画效果

导航栏平滑切换与自定义动画实现教程 在移动应用开发中,动画效果对于提升用户体验至关重要。传统的Push动画虽然为界面转换提供了一种平滑的过渡方式,但它们通常缺乏个性化和多样性。用户体验分析表明,用户对于应用的互动和界面变化的响应非常敏感。当动画变得千篇一律时,应用的趣味性和吸引力会大打折扣。传统的动画效果难以满足个性化需求,无法为品牌特色提供支持。例如,使用标准的“左滑进右滑出”的动画效果,对于那些希望在应用中表达独特品牌价值和个性的应用开发者而言,可能无法满足他们的需求。 阅读详情

创建两个视图控制器,加到导航控制器上

#import "AppDelegate.h"

#import "FirstViewController.h"

@interface AppDelegate ()


@end


@implementation AppDelegate



- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];

    self.window.backgroundColor = [UIColor whiteColor];

    [self.window makeKeyAndVisible];

    

    FirstViewController *firstCtrl = [[FirstViewController alloc] init];

    UINavigationController *navCtrl = [[UINavigationController alloc] initWithRootViewController:firstCtrl];

    self.window.rootViewController = navCtrl;

    

    return YES;

}



在FirstViewController中导入SecondViewController

#import "FirstViewController.h"

#import "SecondViewController.h"

@interface FirstViewController ()


@end


@implementation FirstViewController


- (void)viewDidLoad {

    [super viewDidLoad];


    self.title = @"吃了吗";

    self.view.backgroundColor = [UIColor cyanColor];


    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];

    button.frame = CGRectMake(100, 100, 100, 100);

    [button setTitle:@"push" forState:UIControlStateNormal];

    [button addTarget:self action:@selector(buttonAction) forControlEvents:UIControlEventTouchUpInside];

    [self.view addSubview:button];

}

//转场动画

- (void)transitionPush{

    

    CATransition *tran = [CATransition animation];

    tran.duration = .5;

    

    tran.type = @"pageCurl";

    tran.subtype = kCATransitionFromRight;

    

    [self.navigationController.view.layer addAnimation:tran forKey:nil];

}

//按钮的点击时间,实现push动画效果

- (void)buttonAction{



    [self transitionPush];

    SecondViewController *second = [[SecondViewController alloc] init];

    [self.navigationController pushViewController:second animated:YES];

}


SecondViewController.m中

#import "SecondViewController.h"


@interface SecondViewController ()


@end


@implementation SecondViewController


- (void)viewDidLoad {

    [super viewDidLoad];


    self.title = @"吃的好饱啊";

    self.view.backgroundColor = [UIColor orangeColor];

}



ios-导航栏动画效果,仿小猪.zip 仿小猪导航动画效果 Demo 将不断完善 立即下载

相关推荐

push和pop自定义动画

效果请看:http://blog.youkuaiyun.com/dolacmeng/article/details/51873395

ios 两句话解决,从无导航栏push到有导航栏界面,顶部闪现空白问题

这个问题也困扰了我挺久的,好多时候,主界面是没有导栏的,点击按钮push到下一层时候是需要导航栏,然而当我们pop回去的时候,往往在原来的导航栏位置会出现44px高度的空白,究其原因,是导航栏未及时消失导致的,解决这个问题其实很简单,只需要两句话,但是句句经典。 第一步,在我们的工程中需要有BaseNavigationController,并且要确定你的app框架的搭建是建立在这个BaseNav

u012795701的博客 1万+

ios-导航栏渐变, 图片放大动画.zip

上下滑动 tableView 时导航栏颜色逐渐变化,下拉 tableView 时,图片进行放大.

【iOS】——界面切换(push&&pop,present&&dismiss)

总结一下就是push和pop绑在一起,需要通过导航控制器来使用。present和dismiss捆在一起,需要在视图中设置按钮触发事件函数来调用。pop返回的是使用push的那个视图控制器,dismiss返回的是使用present的那个视图控制器。

m0_73974920的博客 1537

一文读懂无人机AI识别算法,原理、技术、应用

本文详细介绍了无人机识别算法的工作原理、技术优势以及在多个行业的应用前景,展现了其在提升安全监控、资源管理和应急响应中的关键作用。尽管无人机识别算法在多个领域展现出巨大潜力,但仍面临技术挑战,如算法的准确性、数据的实时处理能力以及对复杂环境的适应性。4. 消防与城市管理: 无人机识别算法在消防和城市管理中的应用,为相关部门提供了及时的信息支持,提升了应急处置能力和城市管理水平。1. 公安监控: 无人机识别算法在公安领域的应用,可以实时识别犯罪嫌疑人和违法行为,有效提升城市治安管理的智能化水平。

foiadrone的博客 1849

别再乱装了!Win10下NVIDIA显卡驱动、CUDA 11.0和cuDNN 8.0.5保姆级配置指南(含版本匹配避坑)

本文提供Win10下NVIDIA显卡驱动、CUDA 11.0和cuDNN 8.0.5的保姆级配置指南,详细解析版本匹配逻辑与安装步骤。从驱动选择到环境变量配置,再到框架测试,手把手教你避开常见坑点,确保深度学习环境一次配置成功。特别强调版本匹配的重要性,帮助开发者高效搭建GPU开发环境。

weixin_30600197的博客 307

iOS自定义push动画-从下向上push

/动画速度,kCAMediaTimingFunctionEaseInEaseOut创建了一个慢慢加速然后再慢慢减速的过程。

BianHuanShiZhe的专栏 1316

Windows 10/11蓝屏急救:SECURE_PCI_CONFIG_SPACE_ACCESS_VIOLATION报错全攻略(附安全模式+CMD修复)

本文针对Windows 10/11系统常见的SECURE_PCI_CONFIG_SPACE_ACCESS_VIOLATION蓝屏报错,提供了从诊断到修复的完整解决方案。文章深入剖析了该错误与系统安全功能“内存完整性”及pci.sys驱动的关系,并详细指导用户如何通过安全模式进行基础修复,以及使用命令提示符执行高级系统文件修复和注册表修改,帮助用户彻底解决蓝屏问题并恢复系统稳定。

echo99的专栏 970

十六进制色码表

白色 FFFFFF 红色 FF0000 绿色 00FF00 蓝色 0000FF 洋红 FF00FF 墨绿 00FFFF 黄色 FFFF00 黑色 000000 爱丽丝兰 F0F8FF 碧绿 70DB93 巧克力色 5C3317 蓝紫色 9F5F9F 黄铜 B5A642 亮金 D9D919 褐色 A62AA2 青铜1 8C7853 青铜2 A67D3D 藏青 5...

qq_32921327的博客 3万+

星座SAR动目标检测(GMTI)

参考代码 星座SAR动目标检测 www.youwenfan.com/contentcsg/52399.html。

feifeigo123的博客 549

ROS激光雷达动态避障算法优化(C++实战)

本文深入探讨了ROS激光雷达动态避障算法的C++实战优化。针对动态环境的核心挑战,文章系统性地介绍了从激光数据预处理(降噪、瘦身)、动态障碍物检测与跟踪,到基于动态窗口法(DWA)的智能决策与调优的全流程。重点分享了如何将障碍物速度预测融入DWA打分函数,以实现更安全、流畅的避障,并提供了工程架构、性能优化及真机调试的实用建议。

weixin_29192141的博客 947

iOS 自定义转场动画实现小红书的push效果思路以及下雪碎屏等动画的实现

感觉好久没写会动的Demo了,前几天写了很久的Block源码分析,分析了几天整个人都不好了,都不知道block是什么了......,有需要的同学可以去看看,简直不要太简单Block是什么鬼       毕竟也是做电商的,有时候会研究别人家的App实现,有写过Higo的页面,也看了小红书的push动画,之前一直 不知道怎么做到的,偶然间看到了转场动画自定义,原来是这么玩的,OK,今天以非

Deft_MKJing的博客 9327

华为OD机试双机位C卷-热点网站统计 (Py/Java/C/C++/Js/Go)

华为OD机试双机位C卷 热点网站统计,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解。 华为od机考真题 - 热点网站统计。

qq_45776114的博客 779

iOS 自定义页面的切换动画与交互动画 By Swift

在iOS7之前,开发者为了寻求自定义Navigation Controller的Push/Pop动画,只能受限于子类化一个UINavigationController,或是用自定义的动画去覆盖它。但是随着iOS7的到来,Apple针对开发者推出了新的工具,以更灵活地方式管理UIViewController切换。

Bannings的专栏 4万+

Python 爬虫实战:攻克小红书种草笔记,抓取美妆好物推荐数据

通过本次 Python 爬虫实战,我们成功地从小红书爬取了美妆种草笔记的数据,并进行了存储、处理、分析和可视化展示。在这个过程中,我们不仅掌握了爬虫技术的基本应用,还学会了如何对动态加载的数据进行处理和分析。然而,本次爬虫任务也存在一些局限性,例如仅爬取了部分笔记的数据,且未对笔记中的图片和视频内容进行分析。在未来的工作中,我们可以进一步优化爬虫程序,爬取更多笔记的数据,并深入分析笔记中的多媒体内容、用户行为模式等,为美妆品牌和消费者提供更有价值的数据支持。

u014481728的博客 3272

逻辑判断1-逻辑基础知识

判断推理学习笔记

小y的学习笔记 2133

RainbowNavigation完全指南:如何在iOS应用中实现导航栏颜色动画效果

想要为你的iOS应用添加炫酷的导航栏颜色动画效果吗?🌈 RainbowNavigation正是你需要的终极解决方案!这个简单易用的Swift库能够让你在Push和Pop操作时,平滑地改变UINavigationBar的背景色,为你的应用增添专业级的视觉体验。无论你是iOS开发新手还是经验丰富的开发者,RainbowNavigation都能帮助你快速实现令人惊艳的导航栏动画效果。 ## 🌟 R

gitblog_00097的博客 717

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

CYCustomedNavigation自定义转场动画和ViewController独立管理的导航栏

项目地址 What is CYNavigationController ?             应用场景 场景1   采用组件化路由协议架构APP,有时可能需要根据URI跳转到任意界面,考虑到当前显示的父级Controller的不确定性,这种业务场景是复杂的,如果当前展示的ViewCon...

u014604106的博客 674

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

iOS 自己定义页面的切换动画与交互动画 By Swift

在iOS7之前,开发人员为了寻求自己定义Navigation Controller的Push/Pop动画,仅仅能受限于子类化一个UINavigationController,或是用自己定义的动画去覆盖它。可是随着iOS7的到来,Apple针对开发人员推出了新的工具,以更灵活地方式管理UIViewController切换。我把终于的Demo稍做改动,算是找了一个合适的应用场景,另外配上几张美图,...

weixin_30920513的博客 134

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ETNavBarTransparent终极指南:如何在iOS应用中实现平滑导航栏透明效果

ETNavBarTransparent是一款专为iOS应用设计的实用工具,能够帮助开发者轻松实现导航栏在各种场景下的透明效果切换,尤其是在手势返回操作时提供平滑过渡体验。通过简单的配置,你可以让导航栏根据滚动位置或页面切换动态调整透明度,为用户带来更加流畅的视觉体验。 ## 为什么选择ETNavBarTransparent? 在iOS应用开发中,导航栏的视觉效果对整体用户体验有着重要影响。传统

gitblog_00883的博客 672

再谈iOS 7的手势滑动返回功能

得到

hanmingsa的专栏 609

5分钟快速上手RainbowNavigation:让你的iOS导航栏动起来

想要为你的iOS应用添加炫酷的导航栏动画效果吗?RainbowNavigation是一个简单易用的Swift库,专门用于在Push和Pop操作时平滑地改变UINavigationBar的背景颜色。这个轻量级工具让你的应用导航体验更加流畅美观,只需几分钟就能实现专业级的视觉效果。 ## 🎨 什么是RainbowNavigation? **RainbowNavigation** 是一个用Swif

gitblog_00005的博客 871

MAS 激活脚本完全指南:4 种方式免费激活 Windows 与 Office

MAS(Microsoft Activation Scripts)是一套开源的 Windows 与 Office 激活脚本,内置 HWID、Ohook、Online KMS、TSforge 四种激活方式,并附带激活状态检查、故障排除和版本切换等配套脚本。本文按新手最常卡住的四个问题展开:脚本从哪拿、四种方式怎么对号入座、怎么确认真的激活成功、失败了先查哪里。全文只保留必须执行的命令,跑完一遍通常几

gitblog_00176的博客 25

代码搭建记事本框架(二)

主题设定,初始化的代码,通过执行这些代码来设置对应的navigation和barbutton的属性 /** * 只执行一次的代码 */ +(void)initialize { //设置nav对应的属性. [self setNavigationBarTheme]; //设置barbutton对应的属性. [self setBarButton...

weixin_30613433的博客 138
上一篇: IOS GCD的5种队列用法和异步、同步操作
下一篇: IOS加载网络图片的框架(共有4中方法)
CyanColor
博客等级 码龄12年 7粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值