2017-01-24 36 views
0

我想我的代碼SWIFT 2.1更改爲SWIFT 3類型任何?對NSDictonary的iOS沒有下成員

,但我得到以下錯誤:

Type Any? has no subscript members 

早些時候,我使用

let activityCount = self.activityCoutArray.value(forKey: "ActivitytodoCount")[0].value(forKey: "Count") as! Int 

我已經改成斯威夫特3

let activityCount = self.activityCoutArray["ActivitytodoCount"][0]["Count"] as? [String:Any] 

但仍是給予同樣的錯誤,

請幫我在哪裏,我錯了..

+0

在Swift 3中,出於類型安全的原因,編譯器必須知道所有下標對象的實際類型。這種鏈不支持(再)。 – vadian

+0

[類型'任何'沒有下標成員在xcode 8 Swift 3]可能的重複(http://stackoverflow.com/questions/39516199/type-any-has-no-subscript-members-in-xcode-8- swift-3) – user28434

+0

@ user28434我的查詢在這裏是不同的swift不fir杉木jquery –

回答

1

它應該是這樣的。首先獲取字典數組([[String:Any]]),然後訪問數組中的第一個元素,然後從Dictionary獲取所需的值。

if let activityArray = self.activityCoutArray["ActivitytodoCount"] as? [[String:Any]], 
    let firstDic = activityArray.first, let count = firstDic["count"] as? Int { 
     print(count) 
} 
+0

它爲我工作,謝謝! –

+0

@RaghavChopra歡迎隊友:) –

+0

你可以請我這一行let inboundCallCount = self.activityCoutArray.value(forKey:「InboundCallCount」)![indexValue] as?字符串 –

相關問題