过渡导航栏标题

2024-04-08

在一个名为“Luvocracy”的应用程序中,当用户在屏幕上向上滑动时,导航栏的标题会发生变化。旧标题被推高,而新标题则过渡进来。我现在没有视频,但这里有一些屏幕截图:

https://www.dropbox.com/s/sns0bsxkdv7pw3l/Photo%20Apr%2008%2C%2011%2001%2005%20AM.png https://www.dropbox.com/s/sns0bsxkdv7pw3l/Photo%20Apr%2008%2C%2011%2001%2005%20AM.png

https://www.dropbox.com/s/ys9a49u3dyxrlcm/Photo%20Apr%2008%2C%2011%2001%2009%20AM.png https://www.dropbox.com/s/ys9a49u3dyxrlcm/Photo%20Apr%2008%2C%2011%2001%2009%20AM.png

https://www.dropbox.com/s/dlcfvfvqqov3ag7/Photo%20Apr%2008%2C%2011%2001%2013%20AM.png https://www.dropbox.com/s/dlcfvfvqqov3ag7/Photo%20Apr%2008%2C%2011%2001%2013%20AM.png

如何在新的导航栏标题中设置动画或过渡,如图所示?

编辑:该应用程序在应用程序商店中不再可用,因此我无法上传此操作的视频。


您可以使用 CATransition 对标题更改进行动画处理...但是,由于标题本身是导航栏上的私有属性,因此您需要首先创建一个自定义标签并将其附加到导航项。

设置标题标签(这将覆盖默认导航栏的标题):

UILabel *titleLabelView = [[UILabel alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 100.0f, 44.0f) /* auto-sized anyway */];
titleLabelView.backgroundColor = [UIColor clearColor];
titleLabelView.textAlignment = NSTextAlignmentCenter;
titleLabelView.textColor = [UIColor blackColor];
titleLabelView.font = [UIFont systemFontOfSize:16.0f];
titleLabelView.adjustsFontSizeToFitWidth = YES;
titleLabelView.text = @"@cracy123";
self.navigationItem.titleView = titleLabelView;

然后,每当您想要为标题更改设置动画时(假设滚动视图委托操作),请添加一个 CAAnimation 层并立即执行:

CATransition *animation = [CATransition animation];
animation.duration = 1.0;
animation.type = kCATransitionPush;
animation.subtype = kCATransitionFromTop;
animation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
[self.navigationItem.titleView.layer addAnimation:animation forKey:@"changeTitle"];

((UILabel*)self.navigationItem.titleView).text = @"JACOB K";

显然,您可以更改 CATransition 动画属性来获得您想要的效果,但这些会给您带来“俯卧撑”效果。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

过渡导航栏标题 的相关文章

  • iOS - UITableViewCell 使文本加粗

    我有一个字符串 NSString userInfo James Johnson james 我想做的就是大胆James Johnson并保留 james正常字体 所以我尝试过的是使用NSAttributedString但为了完成这个过程 我
  • 使用velocity.js制作可拖动元素的动画

    我正在使用velocity js 为用户拖动的可拖动 SVG 元素设置动画 然而 velocity js 将先前的 mousemove 坐标排队并通过所有后续的 mousemove 坐标进行动画处理 我想要的是velocity js 不要对
  • 当 isUserInteractionEnabled false 时,SKSpriteNode 不会让触摸通过

    我正在尝试在 SpriteKit 中创建一个覆盖层 方法是使用SKSpriteNode 但是 我希望触摸穿过覆盖层 所以我设置isUserInteractionEnabled为假 然而 当我这样做时 SKSpriteNode似乎仍然吸收所有
  • 如何在 NSTextView 中使用 SPACE 而不是 TAB

    我只知道如何修改 NSTextView 中的制表符宽度 NSMutableParagraphStyle paragraphStyle self defaultParagraphStyle mutableCopy paragraphStyle
  • 从 robovm 项目创建 iOS 静态库(JNI 中的 BAD_ACCESS)

    我有大量的Java代码 只有计算函数 没有UI 我想在iOS中将其重用为静态库 我的方法是使用robovm http www robovm com并按照robovm论坛中两篇文章中描述的非官方方式创建静态库 1 基本方式 https gro
  • 如何检测用户是否第一次打开应用程序[重复]

    这个问题在这里已经有答案了 是否可以检测用户是否是第一次打开iOS应用程序 使用Objective C 我想在用户第一次打开应用程序时显示欢迎消息 但之后不再向他们显示 我正在寻找类似的东西 BOOL firstTime AppDelega
  • 如何动态获取 UITableViewCell 的高度

    我创建了自定义的tableViewCell 我在UITableViewCell中添加了UIView SubView 所以我在 UIView 中的所有动态文本和图像内容都会根据文本和图像大小而变化 但现在 HeightforRowAtInde
  • 从未调用过交互式委托方法

    我想在 ViewController 1 和 NavigationViewController 2 之间进行交互式转换 NavigationController 通过按钮调用 因此呈现时没有交互转换 它可以通过按钮或 UIPanGestur
  • ABAddressBookCopyArrayOfAllPeople 中缺少联系人

    我试图从我的应用程序中的地址簿中查找电话号码 但很惊讶没有找到它 问题是 我已经在我的应用程序访问的控制台中打印了地址簿的所有号码 奇怪的是 有些联系人丢失了 我正在将输出与我的地址簿进行比较 虽然数量很少 但仍然如此 这就是我访问地址簿的
  • iPhone X 将对象底部与安全区域对齐会破坏其他设备上的外观

    关于 iPhone X 自动布局怪癖的问题 我有两个按钮 以前这些按钮将与超级视图底部对齐 偏移量为 20 以免它们接触屏幕底部 此后我将链接更改为安全区域而不是超级视图 Here s the original setup Looks go
  • 有没有办法在 Firebase 中等待查询完成?

    我正在使用 TableView 在 Viewcontroller 中的 iOS 应用程序中进行查询 我想确保在继续加载 TableView 之前我的查询已经返回 有没有办法保证查询已经完成 None
  • 如何在 iOS 13 中将 UISegmentedControl 的背景颜色设置为白色

    iOS 13 对 UISegmentedControl 进行了一些更改 包括切换所选片段时的非常漂亮的动画 但是我注意到它没有显示backgroundColor属性正确 它似乎总是有一点色彩 我见过回答如何设置的问题selectedSegm
  • Safari 中的 css3 边框半径动画过渡不起作用

    尝试在 Safari 中对图像的边框半径进行 css3 轻松过渡 它只是有点闪烁进入悬停状态 而不是平滑过渡 任何帮助深表感谢 我的代码如下 CSS all a hover img webkit border radius 50 moz b
  • 如何按字母顺序对 UITableView 分区进行排序?

    我有一个包含 3 个类别的分段 UITableView 我正在使用这段代码 NSArray arrayOne NSArray arrayWithObjects one two three four nil NSDictionary dict
  • Swift:长按手势识别器 - 检测轻击和长按

    我想连接一个动作 如果手势是点击 它会以特定的方式为对象设置动画 但如果按下持续时间超过 0 5 秒 它会执行其他操作 现在 我刚刚连接了动画 我不知道如何区分长按和点击 如何访问新闻持续时间以实现上述目的 IBAction func ta
  • UIImageView 使用动画块从中心缩放

    我正在使用以下内容来放大图像 但它是从左顶点开始缩放的 如何从中心进行缩放 UIView animateWithDuration duration delay delay options options animations myImage
  • GLKit的GLKMatrix“列专业”如何?

    前提A 当谈论线性存储器中的 列主 矩阵时 列被一个接一个地指定 使得存储器中的前 4 个条目对应于矩阵中的第一列 另一方面 行主 矩阵被理解为依次指定行 以便内存中的前 4 个条目指定矩阵的第一行 A GLKMatrix4看起来像这样 u
  • 防止 iOS 键盘在 cordova 3.5 中滚动页面

    我正在使用 Cordova 3 5 和 jQuery mobile 构建 iOS 应用程序 我在大部分应用程序中禁用了滚动功能 但是 当我选择输入字段时 iOS 键盘会打开并向上滚动页面 我不想要这个功能 由于输入足够高 键盘不会覆盖它 我
  • Xcode 异步单元测试在主线程上等待

    我正在尝试使用 Xcode 中的单元测试来测试一些异步代码 但主线程被阻塞 问题在于 某些正在测试的代码期望从 iOS 类 AVFoundation 接收回调 但是 AVFoundation 类似乎只会在主线程上回调 问题是 如果我正在进行
  • Fitbit oauth2 公共 API 停止工作。给出错误 - 抱歉,这不是你..是我们

    几个月前 我准备了一个关于 Fitbit oauth2 公共 API 的演示 其中我使用特定用户登录并获取他的活动 一切正常 但最近 我打开演示并尝试使用同一用户登录 但它没有登录并反复出现此错误 我尝试更改在 Fitbit 上注册的演示应

随机推荐

  • ANTLR4 Lexer 错误报告(违规字符的长度)

    我正在使用 ANTLR4 为某些语言开发一个小型 IDE 并且需要在词法分析器无法匹配错误字符时给它们下划线 内置的org antlr v4 runtime ANTLRErrorListener http www antlr org api
  • 从 JavaScript 到 PHP 的数据传输

    如何获取 PHP 浏览器的高度和宽度 就像从 JavaScript 到 PHP 的数据传输一样 随着使用innerHeight and InnerWidth 我认为 如果用户屏幕尺寸小 我只需要显示小图片 如果屏幕尺寸大 我只需要显示大图片
  • PHP post方法无法从url获取数据

    我有一个 URL 用于在浏览器中粘贴并按 Enter 键后获取发布数据 我的链接是 http vtrails us mixtape builder song urls http vtrails us wp content uploads 2
  • 如何在 Unity3D 中编辑动画

    我在层次结构中选择了一个带有动画组件的游戏对象 不是动画师 而是一个简单的动画 然后我尝试通过从 窗口 菜单中选择 动画 来打开动画窗口来编辑它 问题是动画窗口变灰 建议我创建一个新动画 但我只想编辑我已经拥有的一个 要编辑动画 您需要选择
  • 在 Swift 中追加字符串

    我是 iOS 新手 我目前正在使用 Objective C 和 Swift 学习 iOS 要在 Objective C 中附加字符串 我使用以下代码 NSString string1 This is NSString string2 Swi
  • getIntent() 和从 savingInstanceState 获取意图有什么区别?

    大家好 我正在尝试 Android 在 2 个类之间传递意图 我意识到有 2 种传递意图的方法 第一个是在这里使用 getIntent 方法 Bundle extras getIntent getExtras mRowId extras n
  • 为什么强制转换为泛型类型会生效?

    On 重温Java http javarevisited blogspot tw 2011 09 generics java example tutorial html 代码摘录如下 class Holder
  • Tar 一个目录,但不要在存档中存储完整的绝对路径

    我在备份 shell 脚本的一部分中有以下命令 tar cjf site1 bz2 var www site1 当我列出存档的内容时 我得到 tar tf site1 bz2 var www site1 style css var www
  • Python tkinter 组合框

    当我单击组合框的名称而不使用 检查 等按钮来显示值时 我想填写我的条目 我怎样才能做到这一点 import tkinter as tk from tkinter import ttk import csv root tk Tk cb ttk
  • 当非模态时,展开 Segue 不会忽略自适应弹出框演示

    iOS 9 beta 更新 Apple 可能已针对 iOS 9 修复了此问题 如果您在 iOS 8 上解决了此问题 请确保它在 iOS 9 上也能正常工作 在故事板中 我创建了一个弹出框演示转场 以通过按钮呈现导航和视图控制器 并创建展开转
  • 动态 SQL 示例

    我最近了解了什么是动态 sql 它对我来说最有趣的功能之一是我们可以使用动态列名和表 但我无法思考现实生活中有用的例子 我唯一想到的是统计表 假设我们有一个包含名称 类型和created data 的表 然后我们想要一个表 其列中是从cre
  • 我可以在不更改系统 DPI 设置的情况下设置 Java Swing 应用程序的 DPI 分辨率吗?

    我有一个使用 Substance LookAndFeel 并以 Windows 作为目标平台的 Java 应用程序 我想增加应用程序的 DPI 设置without更改系统设置 我想这样做是因为我不想强迫用户重新启动 Windows 而且许多
  • git grep 按文件扩展名

    我知道 如果我只想在具有特定扩展名的文件上 grep 查找模式 我可以这样做 searches recursively and matches case insensitively in only javascript files for
  • 如何检查条件并将文本写入文本文件 oracle 表单

    我正在 Oracle Forms 中创建过程 其中检查验证数据并将数据插入表中 另请检查验证数据如果条件为真 则将一些文本写入文本文件 如果条件不为真 则将一些文本写入文本文件 Like Validation No 1 OK Validat
  • 生成聚合结构

    所以这里有一个问题 我想要做的是根据一组输入值生成一个数据结构 由于这是多语言提交 因此我们将输入列表视为键 值对数组 因此 还有一系列哈希 映射 字典或任何能让您满意的术语 我将在这里将所有符号保留为 JSON 希望它具有足够的通用性来翻
  • 提高 SURF 在小图像上的性能

    我在网络上遇到的每个 SURF 实现似乎都特别不擅长从小图像 例如 100x100 或更小 中提取有用数量的兴趣点 我尝试了多种方法 1 使用各种放大算法 从简单的最近邻算法到更高级的算法 基本上每个放大器 imagemagick 都提供
  • 如何更新 Haskell Map 中的项目?

    我是 Haskell 的新手 正在尝试找出一个合理的方法 写入地图的方式 为解决特定问题做准备 欧拉工程问题 我希望写一个函数来填充 带有记录的地图 但我无法让它发挥作用 let似乎创建局部变量而不是治疗smap作为一个全球性的 一定有某种
  • 使用javamail连接到hotmail?

    我想知道是否可以使用JavaMail 连接到Hotmail 我已经尝试过 但它不起作用 连接被拒绝 String host pop3 live com String username email protected cdn cgi l em
  • 自定义 QML 模块部署到 Android:缺少 QML 依赖项

    我正在开发一个包含一些特殊类型的自定义 QML 模块 我们称之为 MyModule 它用作其他应用程序项目的预编译库 即源代码对它们不可用 它通过 import MyModule 1 0 设置必要的导入路径等来使用 该模块包含基于 C 的
  • 过渡导航栏标题

    在一个名为 Luvocracy 的应用程序中 当用户在屏幕上向上滑动时 导航栏的标题会发生变化 旧标题被推高 而新标题则过渡进来 我现在没有视频 但这里有一些屏幕截图 https www dropbox com s sns0bsxkdv7p