iphone - 是否可以将 UIBarButtonItem 作为单元格accessoryView?

标签 iphone ios uitableview uibarbuttonitem

我有一个表格 View ,其中一个单元格应该显示缩略图。但是,如果该图像不可用(尚未拍摄),我喜欢让单元格的accessoryView显示相机UIBarButtonItem...但是当我尝试通常的方法时,我得到'不兼容类型的警告。有没有办法在导航栏之外使用这些项目?

最佳答案

不可能直接使用UIBarButtonItem作为单元格的accessoryView,因为UIBarButtonItem不是UIView

次优解决方案可能是使用 UIToolbar 来保存 UIBarButtonItem。然后,您可以将UIToolbar 添加为单元格的accessoryView,但最终会得到UIToolbar 不需要的轮廓。这个SO answer解释如何创建透明的 UIToolbar 子类。这样您将看不到工具栏的背景,但您也会丢失 UIBarButtonItem 的轮廓 - 它只会显示白色相机图标:

UIToolbar *toolbar = [[TransparentToolbar alloc] init];
UIBarButtonItem *item = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCamera target:self action:@selector(someAction)];
toolbar.frame = CGRectMake(0, 0, 40, 30);
[toolbar setItems:[NSArray arrayWithObject:item] animated:NO];
cell.accessoryView = toolbar;
[item release];
[toolbar release];

关于iphone - 是否可以将 UIBarButtonItem 作为单元格accessoryView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7129165/

相关文章:

IOS后台发邮件

iphone - 检测 uiscrollview 内 uiimageview 中的点击

iphone - 使用来自iPhone的线程进行HTTP请求

ios - 如何将 sqlite 数据库值添加到数组中以及如何将这些值添加到 TableView 中?

ios - 从子 SKSpriteNode 读取值

ios - XCode 自动完成

ios - cellForRowAtIndexPath 在加载时将单元格视为不同的高度,然后重新加载?

ios - 如何更改表格 View 单元格文本?

iphone - 自定义 Nib UITableViewCell 高度

iphone - ExternalAccessory 和 NSUserDefaults 奇怪的问题