我需要知道UIBarButtons
的Y和X位置,最好是它的宽度和高度。
我尝试过这个解决方案:UIBarButtonItem: How can I find its frame?但它对我不起作用。
我试过了:
UIBarButtonItem *item = _bbiPlus ;
UIView *view = [item valueForKey:@"view"];
NSLog(@"igrek? %f", view.frame.origin.y);
输出:
0.000.
考虑到它在不同设备上的变化,我怎么能得到item
的位置?
答案 0 :(得分:1)
你需要在自定义视图中使用UIBarButtonItem,在该视图上有指针(valueForKey:@"view"]
闻起来像私有API:可以被拒绝,不能保证100%的结果)。
您需要使用convertRect:
函数来获取相对于您需要坐标的视图中的坐标。
答案 1 :(得分:0)
试试这个
[self.view convertPoint:yourButton.origin toView:nil];
或换句话说
[view.superview convertPoint:navButton.frame.origin toView:[UIApplication sharedApplication].keyWindow.rootViewController.view]