Questions tagged «swift»

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

24
当我使用CocoaPods时,“没有这样的模块”
这是我的程序。我Podfile在项目目录中创建一个新目录,然后添加以下内容 platform :ios, '9.0' use_frameworks! target 'CPod' do pod 'AFNetworking', '~> 2.5' pod 'ORStackView', '~> 2.0' pod 'SwiftyJSON', '~> 2.1' end 我开火pod install,一切顺利,打开xcworkspace。然后我转到ViewController.swift,如果尝试导入一个pod No such module 'SwiftyJSON',我会这样做import SwiftyJSON。有任何想法吗? 编辑:SwiftyJSON是基于Swift的模块,而不是Obj-C
74 ios  xcode  swift  cocoapods 

19
使用Swift在一个ViewController中强制使用横向模式
我试图在横向模式下仅强制应用程序中的一个视图, override func shouldAutorotate() -> Bool { print("shouldAutorotate") return false } override func supportedInterfaceOrientations() -> Int { print("supportedInterfaceOrientations") return Int(UIInterfaceOrientationMask.LandscapeLeft.rawValue) } override func preferredInterfaceOrientationForPresentation() -> UIInterfaceOrientation { return UIInterfaceOrientation.LandscapeLeft } 该视图以纵向模式启动,并且在我更改设备方向时保持旋转。 从不调用shouldAutorotate。 任何帮助,将不胜感激。
74 ios  swift  landscape 

7
NSURLSession:如何增加URL请求的超时时间?
我正在使用iOS 7的新版NSURLSessionDataTask本来检索数据,如下所示: NSURLSession *session = [NSURLSession sharedSession]; NSURLSessionDataTask *dataTask = [session dataTaskWithRequest: request completionHandler: ^(NSData *data, NSURLResponse *response, NSError *error) { // }]; 如何增加超时值以避免错误"The request timed out"(在 NSURLErrorDomainCode =中-1001)? 我已经检查了NSURLSessionConfiguration的文档,但没有找到设置超时值的方法。 感谢您的帮助!

12
在Swift中获取文件大小
我尝试了几种方法来获取文件大小,但始终为零。 let path = NSBundle.mainBundle().pathForResource("movie", ofType: "mov") let attr = NSFileManager.defaultManager().attributesOfFileSystemForPath(path!, error: nil) if let attr = attr { let size: AnyObject? = attr[NSFileSize] println("File size = \(size)") } 我在日志中: File size = nil
74 ios  swift 

7
在Swift中重新初始化一个懒惰的初始化变量
我有一个初始化为的变量: lazy var aClient:Clinet = { var _aClient = Clinet(ClinetSession.shared()) _aClient.delegate = self return _aClient }() 问题是,在某个时候,我需要重置此aClient变量,以便在ClinetSession.shared()更改后可以再次初始化。但是如果我将类设置为可选的话Clinet?,LLVM在尝试将其设置为时会给我一个错误nil。如果我只是使用重置代码中的某个位置aClient = Clinet(ClinetSession.shared()),它将最终显示为EXEC_BAD_ACCESS。 有没有一种方法可以使用lazy并允许自己重置?
74 swift 

2
SceneDelegate和AppDelegate之间的区别
在我的SwiftUI项目中,我同时看到AppDelegate文件和SceneDelegate文件。 它们之间有什么区别? 例如在方法之间 SceneDelegate scene(_:willConnectTo:options:) 并在 AppDelegate application(_:didFinishLaunchingWithOptions:)
74 swift  swiftui 

7
在Swift中将NSData转换为[Uint8]
我无法在Swift中找到解决这个问题的方法(它们都是Objective-C,并且它们处理的指针在Swift中我认为并不以相同的形式存在)。有什么办法可以将NSData对象转换为[Uint8]Swift形式的字节数组?
74 swift  nsdata 

21
如何在Swift中从文件扩展名中拆分文件名?
给定捆绑中文件的名称,我想将该文件加载到我的Swift应用程序中。所以我需要使用这种方法: let soundURL = NSBundle.mainBundle().URLForResource(fname, withExtension: ext) 无论出于何种原因,该方法都需要将文件名与文件扩展名分开。很好,在大多数语言中将两者分开很容易。但是到目前为止,在Swift中我还没有发现。 所以这是我所拥有的: var rt: String.Index = fileName.rangeOfString(".", options:NSStringCompareOptions.BackwardsSearch) var fname: String = fileName .substringToIndex(rt) var ext = fileName.substringFromIndex(rt) 如果我在第一行中不包含键入内容,则在随后的两行中都会出现错误。有了它,我在第一行得到一个错误: Cannot convert the expression's type '(UnicodeScalarLiteralConvertible, options: NSStringCompareOptions)' to type 'UnicodeScalarLiteralConvertible' 如何从扩展名中拆分文件名?有一些优雅的方法可以做到这一点吗? 我对Swift感到非常兴奋,因为它看起来比Objective C优雅得多。但是现在我发现它有它自己的麻烦。 第二次尝试:我决定制作自己的字符串搜索方法: func rfind(haystack: String, needle: Character) -> Int { var …
74 ios  string  swift 


7
同时迭代两个数组
我是Swift的新手。我一直在做Java编程。我有一个场景可以在Swift中进行编码。 以下代码是Java语言。在以下情况下,我需要在Swift中进行编码 // With String array - strArr1 String strArr1[] = {"Some1","Some2"} String strArr2[] = {"Somethingelse1","Somethingelse2"} for( int i=0;i< strArr1.length;i++){ System.out.println(strArr1[i] + " - "+ strArr2[i]); } 我很快有几个数组 var strArr1: [String] = ["Some1","Some2"] var strArr2: [String] = ["Somethingelse1","Somethingelse2"] for data in strArr1{ println(data) } for data in strArr2{ println(data) } …

15
UI测试删除文本字段中的文本
在我的测试中,我有一个带有预先存在的文本的文本字段。我想删除内容并输入新字符串。 let textField = app.textFields textField.tap() // delete "Old value" textField.typeText("New value") 用硬件键盘删除字符串时,录音对我来说什么都没有产生。用软件键盘做完同样的事情后,我得到了: let key = app.keys["Usuń"] // Polish name for the key key.tap() key.tap() ... // x times 要么 app.keys["Usuń"].pressForDuration(1.5) 我担心自己的测试取决于语言,因此我为受支持的语言创建了以下内容: extension XCUIElementQuery { var deleteKey: XCUIElement { get { // Polish name for the key if self["Usuń"].exists { …

7
Swift UIView背景颜色不透明度
我有UIView一个UILabel在里面。我希望UIView具有白色背景色,但不透明度为50%。设置的问题view.alpha = 0.5在于标签也将具有50%的不透明度,因此我发现可以UIView使用白色背景色和不透明度(white_view),然后再UIView使用标签(label_view )。然后通过执行以下操作将“ white_view”添加到“ label_view” :label_view.addSubview(white_view)。这显然行不通。我想这样做,如:label_view.backgroundView(white_view)但你不能设置一个背景视图UIView一样,你可以在做UICollectionView了实例。 有谁知道如何解决这个问题? 编辑 因为几个答案大致相同,所以我在这里输入。现在,我什至尝试了这些: label_view1.backgroundColor = UIColor.whiteColor().colorWithAlphaComponent(0.5) label_view1.addSubview(firstPlacelbl) endGameView.addSubview(label_view1) 和 label_view1.backgroundColor = UIColor(white: 1, alpha: 0.5) label_view1.addSubview(firstPlacelbl) endGameView.addSubview(label_view1) 而且标签仍然受Alpha影响,并且不透明度为50%。我不明白我做错了什么,因为我只将颜色alpha设置为0.5,而不是标签。有任何想法吗?
74 ios  swift  uiview  alpha 

17
Swift-获取设备的WIFI IP地址
我需要在Swift中获取iOS设备的IP地址。这不是其他有关此问题的重复!如果没有wifi IP地址,我只需要获取WiFi IP地址-我需要处理它。关于堆栈溢出有一些疑问,但是只有返回IP地址的函数。例如(从如何快速获取IP地址): func getIFAddresses() -> [String] { var addresses = [String]() // Get list of all interfaces on the local machine: var ifaddr : UnsafeMutablePointer<ifaddrs> = nil if getifaddrs(&ifaddr) == 0 { // For each interface ... for (var ptr = ifaddr; ptr != nil; ptr = ptr.memory.ifa_next) { …

6
无法将类型“ NSTaggedPointerString”的值强制转换为“ NSNumber”
我有一个这样的Swift结构。 struct Usage { var totalData: Double var remainingTotalData: Double init(jsonData: NSData) { var jsonDict = [String: AnyObject]() do { jsonDict = try NSJSONSerialization.JSONObjectWithData(jsonData, options: []) as! [String: AnyObject] } catch { print("Error occurred parsing data: \(error)") } totalData = jsonDict["totalfup"] as! Double remainingTotalData = jsonDict["totalrem"] as! Double } } …

6
Swift:调用中缺少参数标签“ xxx”
func say(name:String, msg:String) { println("\(name) say \(msg)") } say("Henry","Hi,Swift") <---- error because missing argument label 'msg' in call 我需要用 say("Henry",msg:"Hi,Swift") 为什么呢 如果我在func中放置了两个以上的var,以便我在调用此func时需要写var名​​称而不是first var, 那确实很麻烦,并且在iBook Swift教程中看不到任何解释。
73 ios  swift 

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.