Questions tagged «swift»

Swift是Apple Inc.针对其平台和Linux开发的一种安全,快速且具有表现力的通用编程语言。Swift是开源的。仅将标记用于有关语言功能或在Swift中需要代码的问题。将标签[ios],[ipados],[macos],[watch-os],[tvos],[cocoa-touch]和[cocoa]用于有关平台或框架的(语言不可知)问题。


11
快速向背景添加模糊效果
我正在设置背景图像以查看控制器。但我也想在此背景上添加模糊效果。我怎样才能做到这一点? 我使用以下代码设置背景: self.view.backgroundColor = UIColor(patternImage: UIImage(named: "testBg")!) 我在互联网上发现模糊imageview,该如何在我的背景中实现呢? var darkBlur = UIBlurEffect(style: UIBlurEffectStyle.Dark) // 2 var blurView = UIVisualEffectView(effect: darkBlur) blurView.frame = imageView.bounds // 3 imageView.addSubview(blurView)
118 ios  swift 

12
Xcode MyProjectName-Bridging-Header.h不存在
我想在我的Objective-C项目中开始使用Swift。所以我增加了一个快速班: import Foundation @objc class System : NSObject { @objc func printSome() { println("Print line System"); } } 并将其导入到.m文件中: #import "MyProjectName-Swift.h" 在构建我的项目时,出现以下错误: Bridging header 'PathToMyProject/MyProjectName-Bridging-Header.h' does not exist 注意:在“构建设置-> Swift编译器-代码生成-> Objective-C桥接标题”下设置为MyProjectName-Bridging-Header.h 我应该怎么做才能解决这个问题? 任何帮助深表感谢。 编辑:桥接头文件:#if defined(__ has_include)&& __has_include()#include #endif #include <objc/NSObject.h> #include <stdint.h> #include <stddef.h> #include <stdbool.h> #if defined(__has_include) && __has_include(<uchar.h>) …
118 ios  objective-c  xcode  swift 

15
如何从Swift打开邮件应用
我正在开发一个简单的快捷应用程序,在该应用程序中,用户输入了电子邮件地址,然后按下了一个按钮,打开了邮件应用程序,地址栏中输入了该地址。我知道如何在Objective-C中做到这一点,但是我很难让它在Swift中工作。
118 ios  swift 


8
如何在Playground中运行异步回调
许多Cocoa和CocoaTouch方法都将完成回调实现为Objective-C中的块,而实现为Swift中的Closures。但是,在Playground中尝试这些操作时,永远不会调用完成操作。例如: // Playground - noun: a place where people can play import Cocoa import XCPlayground let url = NSURL(string: "http://stackoverflow.com") let request = NSURLRequest(URL: url) NSURLConnection.sendAsynchronousRequest(request, queue:NSOperationQueue.currentQueue() { response, maybeData, error in // This block never gets called? if let data = maybeData { let contents = NSString(data:data, encoding:NSUTF8StringEncoding) println(contents) …

12
迅速。无法构建Objective-C模块“ Alamofire”
使用XCode6并按照T的指示重新安装Alamofire的原始香草子模块。此处的某些内容不合适。我收到的错误是“无法在导入alamofire上构建Objective-C模块“ alamofire”。这是我收到的错误的屏幕截图: 而我的配置:
117 swift  alamofire 


10
将NSTextAttachment图像居中于单行UILabel的旁边
我想将NSTextAttachment图像附加到属性字符串中,并使其垂直居中。 我使用以下代码创建我的字符串: NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:DDLocalizedString(@"title.upcomingHotspots") attributes:attrs]; NSTextAttachment *attachment = [[NSTextAttachment alloc] init]; attachment.image = [[UIImage imageNamed:@"help.png"] imageScaledToFitSize:CGSizeMake(14.f, 14.f)]; cell.textLabel.attributedText = [str copy]; 但是,图像似乎与单元格的顶部对齐textLabel。 如何更改绘制附件的矩形?

6
在for-in循环中进行类型转换
我有这个for-in循环: for button in view.subviews { } 现在,我希望将按钮强制转换为自定义类,以便可以使用其属性。 我尝试了这个: for button in view.subviews as AClass 但是它不起作用,给我一个错误:'AClass' does not conform to protocol 'SequenceType' 我尝试了这个: for button:AClass in view.subviews 但是,这也不起作用。

9
无效的Swift支持-文件不匹配
我只是在Swift 2中重新编写了一个应用程序。我正在尝试将该应用程序上载到iTunesConnect(通过Xcode 7 GM)以进行内部测试。 我花了一段时间解决“无效的Swift支持”错误(还有其他相关问题)……但是现在它变成了一些不同的东西。 Apple的错误现在显示: 无效的Swift支持 文件libswiftCoreLocation.dylib,libswiftCoreMedia.dylib,libswiftCoreData.dylib,libswiftAVFoundation.dylib不匹配 /Payload/App.app/Frameworks/libswiftCoreLocation.dylib、/Payload/App.app/Frameworks/libswiftCoreMedia.dylib、/Payload/App.app/Frameworks/libswiftCoreData.dylib、/Payload/App.app/Frameworks/libswiftCoreData.dylib、/Payload/App.app/Frame.s dylib 确保文件正确(?),重新构建您的应用,然后重新提交。 不要对 /Payload/App.app/Frameworks/libswiftCoreLocation.dylib、/Payload/App.app/Frameworks/libswiftCoreMedia.dylib、/Payload/App.app/Frameworks/libswiftCoreData.dylib、/Payload/App.app/Frameworks/libswiftCoreData.dylib、/Payload/App.app/Frame.s dylib。 我一直无法通过搜索“不应用后处理”,“确保文件正确,重建应用程序并重新提交”等来找到类似的错误。 有谁知道我如何“确保文件正确”-或-有其他建议吗?谢谢。
116 ios  xcode  swift 

11
如何使用Swift使iPhone振动?
我需要使iPhone震动,但是我不知道如何在Swift中做到这一点。我知道在Objective-C中,您只需编写: import AudioToolbox AudioServicesPlayAlertSound(kSystemSoundID_Vibrate); 但这对我不起作用。
116 ios  iphone  swift  vibration 

11
iOS推送通知:当应用程序在后台运行时,如何检测用户是否轻按了通知?
关于此主题有很多stackoverflow线程,但是我仍然没有找到一个好的解决方案。 如果该应用程序不在后台,则可以签launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey]入application:didFinishLaunchingWithOptions:呼叫以查看是否已从通知中打开该应用程序。 如果应用程序在后台运行,则所有帖子都建议使用application:didReceiveRemoteNotification:并检查应用程序状态。但是,正如我进行的实验(以及该API的名称所暗示的那样),该方法在收到通知时被调用,而不是被窃听。 因此,问题是,如果启动了应用程序,然后又将其后台运行,并且您知道收到了通知application:didReceiveNotification(此时application:didFinishLaunchWithOptions:将不会触发),那么您如何知道用户是否通过轻按通知或仅轻按应用程序图标?因为如果用户点击通知,则期望打开该通知中提到的页面。否则不应该。 我可以使用handleActionWithIdentifier自定义操作通知,但是只有在点击自定义操作按钮时才会触发,而不是在用户点击通知主体时触发。 谢谢。 编辑: 在阅读下面的一个答案之后,我想通过这种方式可以澄清我的问题: 我们如何区分这两种情况: (A)1.app进入后台;2.收到通知;3.用户点击通知;4.应用进入前台 (B)1.app进入后台;2.收到通知;3.用户忽略该通知,稍后点击应用程序图标;4.应用进入前台 application:didReceiveRemoteNotification:在两种情况下都在步骤2中触发了因为。 或者,应该application:didReceiveRemoteNotification:仅在步骤3中为(A)触发,但是我以某种方式配置了我的应用程序错误,因此我在步骤2中看到了它?


13
如果单元素解码失败,则Swift JSONDecode解码数组也会失败
在使用Swift4和Codable协议时,我遇到了以下问题-似乎没有办法允许JSONDecoder跳过数组中的元素。例如,我具有以下JSON: [ { "name": "Banana", "points": 200, "description": "A banana grown in Ecuador." }, { "name": "Orange" } ] 和一个可编码的结构: struct GroceryProduct: Codable { var name: String var points: Int var description: String? } 解码此json时 let decoder = JSONDecoder() let products = try decoder.decode([GroceryProduct].self, from: json) 结果products为空。这是可以预期的,因为JSON中的第二个对象没有"points"键,而points在GroceryProductstruct中不是可选的。 问题是如何允许JSONDecoder“跳过”无效对象?
116 arrays  json  swift  swift4  codable 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.