我将zxing(qrcode扫描)整合到我的iPhone项目中。我按照说明使其工作,其中包括将类文件从.m重命名为.mm。
当我这样做时,我的项目无法编译错误:“无法在参数传递中将'UIButtonType'转换为'UIBarButtonItemStyle'”,这在我的类中的以下代码中发生(添加一个按钮以允许用户调用扫描操作)
// Add scan button
UIBarButtonItem *qrScanButton = [[UIBarButtonItem alloc] initWithTitle:@"Scan"
style: UIButtonTypeInfoLight
target:self action:@selector(qrScanButtonPressed)];
[[self navigationItem] setLeftBarButtonItem: qrScanButton];
[qrScanButton release];
错误似乎是问题与
有关style:UIButtonTypeInfoLight
如果我注释掉整个块,那么代码编译得很好。当文件类型变为.mm时,它将停止工作。这是一个非常标准的代码块,用于添加备用后退按钮等。
如果有人有任何想法如何解决,我会非常感激。
答案 0 :(得分:3)
问题是“UIButtonTypeInfoLight”不是有效的UIBarButtonItemStyle。 (在上面链接的底部搜索UIBarButtonItemStyle常量。)
目前有效值(iOS 4.2):
你传入的是UIButtonTypeInfoLight,它是一个UIButtonType,在UIBarButtonItem的范围内毫无意义。