ios - 获取 UIBarButtonItem 图像相对于 iOS 7 中导航栏的位置

标签 ios objective-c cocoa-touch uikit uibarbuttonitem

我有一个草图界面原型(prototype),我可以从中获取 UI 元素的坐标。当我用图像创建栏按钮时,它被放置在导航栏上的默认位置。代码如下:

self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"my-image"] style:UIBarButtonItemStylePlain target:self action:nil];

此默认位置与所需位置不同。是否有可能找出相对于其导航栏的默认图像位置(框架) (white rect on this screenshot)没有制作自定义按钮?我需要它向左移动一点图像,但我不想在视觉上使用近似偏移来完成它。

最佳答案

您可以使用KVC访问当前导航栏项目 View

UIView *leftBarButtonItemView = [self.navigationItem.leftBarButtonItem valueForKey:@"view"];

关于ios - 获取 UIBarButtonItem 图像相对于 iOS 7 中导航栏的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34926071/

相关文章:

ios - Facebook 好友邀请的 Swift 2.0 代码

objective-c - Ubuntu下学习Objective-C需要搭建什么开发环境

ios - MasterDetail 模板中的属性和 ivars

ios - 修复了 UITableViewCells 中 ImageViews 的填充?

ios - 获取 View Controller 的类名作为字符串

ios - 使 UIButton 看起来禁用的任何其他选项?

ios - NS条件 : wait for a specified amount of time

iphone - iPhone4 可以同时从前置和后置摄像头录制吗?

ios - iOS 的内存管理

ios - Today Widget Extension 动画在 iOS 10 上不起作用