How to get all keys and values into separate String arrays from NSDictionary in Swift?

You can use:

let keys = jsonResult.flatMap(){ $0.0 as? String }  
let values = jsonResult.flatMap(){ $0.1 }  

It is quite simple because you are using jsonResult as NSDictionary.

let dict: NSDictionary = ["Key1" : "Value1", "Key2" : "Value2"]

let keys = dict.allKeys
let values = dict.allValues

In you're case

let keys:[String] = dict.allKeys as! [String]

var values:[String]

if let valuesSting = dict.allValues as? [String] {
    values = valuesSting
}