ios - swift 中的 viewControllers indexOfObject

标签 ios swift indexof

我有这个 objective-c 方法,我正在尝试将其重写为 swift。

- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
{
    int index = [navigationController.viewControllers indexOfObject:viewController];
    self.pageControl.currentPage = index;
}

我在快速编写这一行时遇到困难:

int index = [navigationController.viewControllers indexOfObject:viewController];

我如何访问 IndexOfObject?

最佳答案

在 Swift 1.2 (Xcode 6.x) 中

let index = find(navigationController.viewControllers, viewController)!

在 Swift 2.0 (Xcode 7.x) 中

let arrayOfVCs = navigationController.viewControllers as Array
let index = arrayOfVCs.indexOf(viewController)

关于ios - swift 中的 viewControllers indexOfObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32581962/

相关文章:

ios - CAShapeLayer 和 CABasicAnimation for circle - loader style - blinking

iphone - iOS 的企业许可和标准许可在编程方面有什么区别

ios - 如何使 UISlider 匹配音频进度

ios - 在 ObservableObject 中导入变量

特殊波斯字符的 C# IndexOf

javascript - javascript 中的 IndexOf 关联数组

ios - Realm -更新对象数组中的所有项目而不是仅附加新项目

ios - 字典 [字符串 : String] keys order changed when converted to array swift

json - Swift JSON 解码器不同类型

c# - 奇怪的 string.IndexOf 行为