返回顶部

收藏

如何得到导航栏右按钮

更多

用于UIBarButtonItem不再是UIView,而是UIController,所以它没有view属性,因此也就没有frame属性,这给程序员查找导航按 钮坐标带来困难。下面是一种查找导航栏右按钮所在的view的方法,从此view中你可以得到按钮的frame。

[C/C++]代码

// 用遍历subviews的方法找到右导航按钮
-(UIView*)findRightBarItemView:(UINavigationBar*)navbar{    
    UIView* rightView = nil;
    for (UIView* v in navbar.subviews) {
        if (rightView==nil) {
            rightView = v;
        } else if (v.frame.origin.x > rightView.frame.origin.x) {
            // 对subviews的x坐标进行升序排序,最大的一个显然就是右按钮
            rightView = v;
        }
    }
    return rightView;
}

标签:iOS,Objective-C

收藏

0人收藏

支持

1

反对

0