通过AVMetadataMachineReadableCodeObject从Aztec条形码读取原始字节会产生意外的结果

我一直在研究一种适用于德国铁路公司(德国铁路公司)使用的特殊条形码的iOS阅读器应用程序。 它是一个连接DSA签名string和zlib瘪负载的Aztec条形码的变体。 当我得知AVMetadataMachineReadableCodeObject没有读取条码中包含的原始字节的公开方法时,我被卡住了,string方法总是乱码zlib压缩数据。 幸运的是, 这个答案给了我正确的方向。 (私人)字节可以通过KVO访问,因为我目前不期望在App Store上分发应用程序,所以这是完美的。 尽pipe我几乎不存在Swift和Objective-C知识,但是我设法使这个工作起来,就像你在示例代码中看到的那样。 但是,存储在NSData的条形码字节与预期的结果不符! 我怀疑我使用的zlib库( DeflateSwift )没有工作,所以我构build了一个testing用例,它工作正常。 我的问题是:我做错了什么? 我是否需要进一步处理原始字节以获得预期结果(请参阅下文)? AVMetadataMachineReadableCodeObject中存储的字节的原始数据是AVMetadataMachineReadableCodeObject ? 任何人都可以指向正确的方向吗? 任何帮助表示赞赏。 这是我的代码(这是一个Swift和Objective-C混搭) if let metadataObject = metadataObjects.first { let readableObject = metadataObject as! AVMetadataMachineReadableCodeObject; let rawReadableObject = readableObject.valueForKeyPath("_internal.basicDescriptor")!["BarcodeRawData"] as? NSData; if let rawBytes = rawReadableObject { let barcodeData = rawBytes; // or use testData instead let barcodeSplit:Int = […]

xcode Interface Builder背景颜色首选项

这似乎很奇怪,所以我可能只是错过了偏好,但是如何改变Xcode中IB的实际背景颜色? 没有任何元素,但是标准IB的实际盲目的白色? 太多的对比,当你缩小,视图控制器几乎消失.. 感谢您的任何提示..

核心数据逆关系没有被设置

我有两个实体,我打电话给A和B.他们在两个方向configuration了多对多关系,所以A.myBs和B.myAs都是NSSets。 这是我奇怪的问题。 当我添加一个B到我的A实体时,我使用mutableSetValueForKey这样做: NSMutableSet *myBSet = [myA mutableSetValueForKey:@"myBs"]; [myBSet addObject:theBtoAdd]; 这确实添加了BtoAdd到A实体,但不添加反比关系。 核心数据上下文保存不会踢任何错误,但我的A对象没有B反转集。 如果我退出应用程序,即使部分关系不保存。 这是奇怪的部分…如果我只是切换我的代码,做相反的(有理由为什么这是很难做我的特定应用程序) – 添加A到B,而不是像这样添加B到A: NSMutableSet *myASet = [myB mutableSetValueForKey:@"myAs"]; [myASet addObject:theAtoAdd]; 它工作得很好。 顺便说一句,我有很多其他的一对多关系的工作。 只是这一个没有。 其他几件事:1)我的核心数据对象模型看起来不错,但这是我在Xcode 4下添加的第一个新实体2)我检查,重新检查,并盲目看着我的自定义NSManagedObjects,但他们看起来罚款dynamic,NSSet,没有冲突的制定者/获得者…等 任何帮助或debuggingbuild议将不胜感激。 谢谢!

Base64 HTMLembedded式图像在邮寄时不显示

我正在embedded以HTML格式进行base64编码的图像,如下所示: [html appendFormat:@"<html><body><p><b><img src=\"data:image/png;base64,%@\"></b></p></body><html>", base64ImageString]; 然后我创build一个新的电子邮件如下: MFMailComposeViewController *mailVC = [[MFMailComposeViewController alloc] init]; mailVC.mailComposeDelegate = self; [mailVC setMessageBody:html isHTML:YES]; [self presentModalViewController:mailVC animated:YES]; embedded的图像在发送之前会显示在新电子邮件中,但不会显示在邮件传送到的任何电子邮件客户端中。 我认为草稿中正确显示的图像表明embedded过程是成功的,但我不明白为什么它在交付时不显示。 看在交付的邮件中的原始HTML显示:src =“cid:(null)”任何帮助,将不胜感激请!

NSCalendarUnitWeekOfYear和NSCalendarUnitWeekOfMonth之间的区别

我想在UILocalNotification之前每周做一个UILocalNotification重复我会使用localNotification.repeatInterval = NSWeekCalendarUnit – 除了NSWeekCalendarUnit已被弃用。 文档说: “使用NSCalendarUnitWeekOfMonth或NSCalendarUnitWeekOfYear,取决于你的意思是” 但我不知道有什么不同,所以我不知道我是哪一个。

iPhone:无与无与真与真之间的区别

iOS开发中nil和Nil什么区别? 和iOS开发中的true和TRUE区别是什么?

为什么在viewDidLoad中不执行SegueWithIdentifier工作?

一旦viewDidLoad在视图控制器上被调用,我试图触发一个故事板segue。 segue附加了一个标识符,并且在从一个链接到button或其他控件的方法中调用时工作正常。 但是它在viewDidLoad里面不起作用。 它只是默默地失败。 在viewDidLoad中有没有关于segue被忽略的规则? 我已经试过这两个: [self performSegueWithIdentifier: @"mySegue" sender: self]; 和这个: [self dismissViewControllerAnimated:YES completion:^() { [self performSegueWithIdentifier:@"mySegue" sender:self]; }]; 既没有工作。

如何将UIView缩放(缩放)到给定的CGPoint

我花了很多时间试图find一种方法来使用CGAffineScale将视图转换为给定的点,包括混合锚点,在转换之前和之后移动视图的中心和全面的谷歌search。 我知道这将是一个简单的UIScrollview; 但是我知道在没有人的情况下,技术上是可能的,而且在我看来这已经变成一个分裂。 这个答案非常接近我想要达到的目标,但是答案只是给出了如何通过巧妙地将中心移动到要放大的那个angular落的对angular来放大给定angular落(而不是给定点)的细节。 我怎样才能修改mvds的代码来缩放UIView到UIView中的任何给定的点? CGFloat s = 3; CGAffineTransform tr = CGAffineTransformScale(self.view.transform, s, s); CGFloat h = self.view.frame.size.height; CGFloat w = self.view.frame.size.width; [UIView animateWithDuration:2.5 delay:0 options:0 animations:^{ self.view.transform = tr; self.view.center = CGPointMake(ww*s/2,h*s/2); } completion:^(BOOL finished) {}];

TypeError:尝试分配给只读属性。 在iOS8 Safari上

您好我的网站上的这个网页在桌面浏览器上工作正常,但有一个奇怪的错误iOS8的Safari浏览器: 索引模板不显示,并在控制台中有错误: TypeError:尝试分配给只读属性。 并指向以下行: }), e("rsvp/promise/all", ["../utils", "exports"], function(e, t) { "use strict"; var r = e.isArray, n = e.isNonThenable; t["default"] = function(e, t) { var i = this; return new i(function(t, a) { function o(e) { return function(r) { c[e] = r, 0===–u && t(c) } } function s(e) { u = 0, a(e) […]

如何在Xcode 4中将plist的根对象types更改为NSArray

如何将根对象types更改为在Xcode 4中创build的plist中的NSArray? 它默认为一种NSDictionary,但我找不到一种方法来改变它。