objective-c - 如何在 iOS 的工具栏上实现指针箭头?

标签 objective-c ios uikit uitoolbar

我希望在当前选定的工具栏图标上方实现一个指针箭头,就像在 Reeder 和 Instacast 中找到的设计一样:

Instacast toolbar

当按下另一个工具栏项时,指针箭头应该平滑移动。我需要能够选择哪些项目导致箭头移动,如 Instacast 和 Reeder 中的特色,其中只有某些项目会改变箭头位置。

我可以在没有太多开销和大量 UIKit 子类化的情况下做到这一点吗?

最佳答案

这应该不会太糟糕:就像您在问题中看到的那样拍摄小三角形的图像,然后将其放在工具栏上方的 UIImageView 中。

然后对其进行设置,以便在调用相关工具栏按钮的 action: 时,UIImageView 滑动到正确的位置,并带有动画。像这样的东西:

[UIView beginAnimations:@"TriangleAnimation" context:NULL];
[UIView setAnimationDuration:0.25];
triangleImageView.frame = //new location here
[UIView commitAnimations];

关于objective-c - 如何在 iOS 的工具栏上实现指针箭头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9328163/

相关文章:

objective-c - NSTimer 在滚动期间停止

java - Objective-C 中是否有像 Java 一样的自定义组件?

iOS Cocoa Touch 添加对象到 NSArray

ios - AppDelegate 和 ViewController 之间的线

ios - 占位符图像的大小会影响性能吗?

ios - 如何捕获包含所有内容的 UIWebview 的屏幕截图?

ios - 在 ios 中实现 Creative SDK for Image Effects 时出现链接器错误

ios - 将阿拉伯语字体移植到 iOS 系统

ios - Swift 中的自动换行标签

iOS UIFont 缓存?