-
Week 6. 수요일, 똑바로 정리를 하면서 해야겠다는 마음이 생기다이전 포스팅/iOS 인턴은 처음이라 ... 2019. 4. 3. 23:45
데일리인턴 6주차 19.04.03
• 오늘업무
\1. 네이버 지도 v3 API 적용 18 / 36 (진행/마감일)
- 네이버 지도 swift 전환 코드 테스트
- 테스트 완료 시 v3 API 적용
\2. x 파일럿 프로젝트 “간헐적 단식” 진행 18 / 36 (진행/마감일)
- DB 테이블 정의서 작성 및 전달(min)
네이버 지도 전환
네이버 마커 말풍선 위치 문제
func onMapOverlay(_ poiDataOverlay: NMapPOIdataOverlay?, viewForCalloutOverlayItem poiItem: NMapPOIitem?, calloutPosition: UnsafeMutablePointer<CGPoint>?) -> UIView? {
문제점
//Error
//Value of type 'UnsafeMutablePointer<CGPoint>?' has no member 'x'
calloutPosition?.x=size.width/2기존 objective-C 코드
calloutPosition.x = size.width / 2
swift 코드
calloutPosition?.pointee.x = size.width / 2
indexOfObjectPassingTest: 전환 문제
지정된 블록에서 테스트를 통과 한 배열에서 첫 번째 객체의 인덱스를 반환합니다.
기존 전환 코드인데 오작동
privatefuncindexForHospitalId(_hospitalId:UInt)->UInt{
if(hospitalId==NSNotFound){
returnUInt(NSNotFound)
}
//MARK: indexOfObjectPassingTest 내식대로 변환해봄
ifletnsHospitals=hospitalsasNSArray?{
returnUInt(nsHospitals.indexOfObject{(obj,_,_)->Boolin
return(UInt((objas!NGDHospital).identifier)==hospitalId)
})
}
}firstIndex(where:)
비슷한 동작을 하는 swift 인스턴스메소드
컬렉션의 요소가 지정된 조건을 충족시키는 첫 번째 인덱스를 반환합니다.
privatefuncindexForHospitalId(_hospitalId:UInt)->UInt{
if(hospitalId==NSNotFound){
returnUInt(NSNotFound)
}
//MARK: 인스턴스 메소드 firstIndex를 이용해서 처리해봄
guardlettest=hospitals.firstIndex(where:{UInt($0.identifier)==hospitalId})
else{returnUInt(NSNotFound)}
returnUInt(test)
}먼저 ObjectiveC에서 어떤 기능를 하는 메소드인지 확인하고
Swift에 같은 기능 비슷한 기능을 하는 메소드를 찾아보고 진행하슈! 쫌
모델 타입 변수 값의 실종 사건 🤬 와...나 nil
프린터 찍고 브레이크걸고 별별별 했는데 결국
return
분명 안보였는데 기존 ObjectiveC 코드랑 비교하면서 계속 봣는데ㅜㅜㅜㅜ
왜 내 눈에는 안보였는가...
사람은 믿을게 못된다 🙄
'이전 포스팅 > iOS 인턴은 처음이라 ...' 카테고리의 다른 글
Week 7. (0) 2019.04.14 Week6. 목요일 (0) 2019.04.05 Week 5. 수구리 모니터에 자판에 수구리 (0) 2019.03.28 Week 4. 공존이 이렇게 어려운거다! (0) 2019.03.21 Week 3. 하루가 너무 순삭 (0) 2019.03.21 댓글