我編輯過這個問題,重點關注最後一個錯誤。這是我的代碼中的最後一個錯誤:數組擴展通過值刪除對象Swift2:按數值刪除對象的數組擴展名 - Foundation
這似乎是與此相關的帖子太:
Array extension to remove object by value
但我堅持:X
func cell(cell: FriendSearchTableViewCell, didSelectUnfollowUser user: PFUser) {
if var followingUsers = followingUsers {
ParseHelper.removeFollowRelationshipFromUser(PFUser.currentUser()!, toUser: user)
// update local cache
removeObject(user, fromArray: &followingUsers)
self.followingUsers = followingUsers
}
//爲 '的removeObject' 引發錯誤:
使用未解決的識別符「的removeObject」
的功能是通過Array+RemoveObject.swift
文件,該文件指出調用框架Foundation
:
import Foundation
// Thanks to Martin R: https://stackoverflow.com/questions/24938948/array-extension-to-remove-object-by-value
extension Array where Element : Equatable {
// Remove first collection element that is equal to the given `object`:
mutating func removeObject(object : Generator.Element) {
if let index = self.indexOf(object) {
self.removeAtIndex(index)
}
}
}
我不知道我的工作區被正確理解,他需要參照這個快捷文件中查找確定的removeObject
的詳細信息。
確保包括所有相關的代碼,以*幫助別人幫你* - 現在正在給你造成錯誤的片不包括在你的代碼片段。錯誤是說你不能將'PFQueryArrayResultBlock'強制轉換爲'updateList'。我無法在包含的代碼中的任何位置找到'updateList'的定義,因此很難提供幫助。另一個錯誤說未解析的標識符「removeObject」是一樣的。 removeObject定義在哪裏?編譯器找不到它,這就是導致錯誤的原因 – Russell
你是完全正確的,並感謝你的評論。我查找了'updateList',發現它指的是AnyObject而不是PFObject。我做了改變,並解決了三個錯誤! 我還有最後一個。它指的是框架「基礎」,其中: '進口基金會 延伸RangeReplaceableCollectionType其中Generator.Element:Equatable { //移除第一收集元件是等於給定'object': 突變FUNC的removeObject(對象: Generator.Element){ 如果讓指數= self.indexOf(對象){ self.removeAtIndex(指數) } } }' – Jeremy
一個建議的版本Swift2是: '擴展陣列{ 突變FUNC的removeObject(對象:T) - >布爾{ var index:Int? for(idx,objectToCompare)in self.enumerate(){ if letCompareCompareToCompare as? Ť{ 如果toCompare ==對象{ 指數= IDX 斷裂 } } } 如果(指數!=無){ self.removeAtIndex(指數!) 還真 }其他{ 返回false }} } ' 但如何編輯代碼 –
Jeremy