草庐IT

ios - Swift: 'NSArray?' 不可转换为 'NSArray?'

我目前正在使用Swift2.0开发我的第一个iOS应用程序。我收到以下错误:'NSArray?'isnotconvertibleto'NSArray?'在这一行:ifletresults:NSArray=jsonResult["results"]as?NSArray{完整代码片段:do{letjsonResult=tryNSJSONSerialization.JSONObjectWithData(data!,options:NSJSONReadingOptions.MutableContainers)as?NSDictionaryifletresults:NSArray=jsonRes

swift - 如何在 swift 中将 nil 值添加到 NSArray?

NSArray.init(数组:[任意])NSArray有一个初始函数,它的参数是[Any]。但不是[Any?],那么,如何向这个数组添加一个nil值? 最佳答案 NSArray/NSMutableArray不允许您在数组中存储nil值。这就是为什么没有一个SwiftAPI允许可选值。如果你真的需要nil的东西,使用NSNull()虽然我不是100%确定它如何与CoreData一起工作。而Swift实际上会为您做到这一点。如果你传递一个Swift可选数组,任何nil值都会被转换为NSNull。示例:vararray=[Int?]()

swift - 如何在 Swift 中过滤 NSArray?

self.filteredUserData=self.userData.filter({(listing:NSDictionary)->BoolinletstringMatch=listing["name"].rangeOfString(searchText)returnstringMatch!=nil})我打算做类似上面的事情,但我意识到'NSArray'没有名为'filter'的成员也不是Swift数组。如何在Swift中过滤NSArray? 最佳答案 这是我最后做的:letresultPredicate=NSPredicate

ios - 如何使用 Swift 将 NSArray 转换为 [Int]

我的问题很简单,letstring="1,2,3,4,5,6"因为我想在字符串中找到最大值,我想使用thisway中的方法,所以我需要这样做:letarray=string.componentsSeparatedByString(",")as[AnyObject]letnumArray=arrayas![Int]letmaxNum=numArray.reduce(Int.min,combine:{max($0,$1)})但是,“arrayas![Int]”会报错fatalerror:arraycannotbebridgedfromObjective-C如果是letnumArray=ar

swift - 从 'Result<AnyObject>' 转换为无关类型 'NSArray' 总是失败

以下代码在XCode6/Swift1上工作正常,但在XCode7/Swift2上给我一个错误Alamofire.request(.POST,"\(self.REQ_URL)",parameters:parameters).validate(contentType:["application/json"]).responseJSON(options:[],completionHandler:{(req,resp,data)->Voidinletdata_ar=dataas!NSArray//hereIgettheerror})我得到的错误是Castfrom'Result'tounrela

ios - Swift NSUserDefaults NSArray 使用 objectForKey

我是Swift的新手,而且我已经陷入困境。我正在尝试从NSUserDefaults检索数据并将其存储在数组中(tasks):@lazyvartasks:NSArray={letdef=NSUserDefaults.standardUserDefaults()letobj:AnyObject?=def.objectForKey("tasks")returnobjasNSArray}()我得到的只是一个警告:第3行的EXE_BAD_INSTRUCTION。还要注意,我实际上还没有设置任何数据,但我的目标是如果没有数据,我希望数组为空。我将使用数据来填充TableView。现在使用var而不

ios - Swift 等效于 (__bridge NSArray*)

我正在尝试使用swift获取具有特定名称的联系人列表。我有以下代码:letowner=owners[indexPath.row];varaddressBook=ABAddressBookCreateWithOptions(nil,nil)varaddressBookRef:ABAddressBookRef=Unmanaged.fromOpaque(addressBook.toOpaque()).takeUnretainedValue()letownerName:NSString=owner["name"]!asNSStringletallContacts=ABAddressBookCo

ios - 使用 NSPredicate 根据作为 NSDictionary 的属性过滤对象的 NSArray

我有一个具有以下属性的对象的NSArray@objcclassDummy:NSObject{letpropertyOne:IntletpropertyTwo:IntletpropertyThree:NSDictionary}在propertyThree中,它会有一些键值对,例如keyOne=>valueOnekeyTwo=>valueTwokeyThree=>valueThree我想根据NSDictionary的keyOne过滤我的NSArray虚拟对象,这是Dummy对象的一个​​属性。我该怎么做呢?我浏览了一下:UsingNSPredicatetofilteranNSArrayba

ios - 如何在 swift 3 中将 NSArray 转换为 Swift 数组

我有两个数组vararr1=[NSArray]()vararr2=[String]()我想将NSArray转换成字符串数组我正在使用arr2=arr1作为![字符串]但它给我错误:-'NSString'isnotasubtypeof'NSArray'还有其他方法可以转换吗? 最佳答案 vararr1=[NSArray]()是NSArray的快速数组。您对NSArray使用了错误的语法为了将NSArray转换为swiftArray使用正确的语法:vararr1=NSArray(objects:"a","b","c")varobjCAr

ios - 无法将类型 'NSTaggedPointerString' 的值转换为 'NSArray'

我在didSelectPost的共享扩展中有以下代码:letsharedDefaults=NSUserDefaults(suiteName:"group.appliaison.ActionExtensionSharingDefaults")varurls:[String]=[]urls.append(self.contentText)sharedDefaults?.setObject(urls,forKey:"stringKey")以及我的主要应用程序VC中viewDidLoad中的以下代码varurls:[String]=[]overridefuncviewDidLoad(){sup