Выполнение принудительного переноса на self.SList
в строке self.srcVp.filterStrings(self.SList as! [String])
означает, что вы уверены, что объекты массива имеют тип String
.
Тогда вы можете определить SList как:
var SList = [String]() or, var SList: [String]? // initialize later on
И добавлять объекты как:
if let names = v_p_item["nama"] as? String {
self.SList.append(names)
}
То же самое можно сделать для self.vpid
в соответствии с типом данных, который он содержит.