plist에서 객체를 가져 와서 Swift에서 CLCircularRegion을 만들려고하는데이 값을 사용하려고하면이 오류가 나타납니다.AnyObject로 올라가지 않고 Swift에서 plist 값을 어떻게 사용합니까?
형식의 인수 목록과 함께 'init'을 호출 할 수 없습니다. '(중심 : $ T3, 반지름 : @lvalue AnyObject?, 식별자 : @lvalue AnyObject ?!)'
내가 볼 수있는 것처럼 잘 작동하는 plist에서 데이터를 가져 오는 데 사용하는 방법은 다음과 같습니다. println 호출을 통해 내용.
func setupLocations() {
// Region plist
let regionArray = NSArray(contentsOfFile: NSBundle.mainBundle().pathForResource("Landmarks", ofType: "plist")!)
println(regionArray)
for location in regionArray! {
var longitudeNumber = location["Longitude"]
var latitudeNumber = location["Latitude"]
var rangeNumber = location["Range"]
var regionString = location["Identifier"]
let newRegion = CLCircularRegion(center: CLLocationCoordinate2DMake(latitudeNumber, longitudeNumber), radius: rangeNumber, identifier: regionString)
}
}
plist 내에서 개체는 사전을 포함하는 배열로 저장됩니다. 이 사전에는 세 개의 숫자 값과 한 개의 문자열 값이 포함됩니다.
감사합니다. 나는 사전으로부터 온 모든 것이 선택 적이라는 것을 이해하지 못 했으므로, 그들이 AnyObject와 String을 시작으로 왜 그런지 이해할 수있었습니다. –
다른 사람이 대답을 읽고 rangeNumber 게다가 자리에 대 Double 대 Int되고. 답변에서 언급했듯이 유형이 유추되었으며 실제 유형을 사용했습니다. 누가 CLCircularRegion과 비슷한 문제가 있다고 생각하는 경우를 대비하여. –