본문 바로가기

IOS16

ios/Swift] Alamofire 통신 시 utf-8이 아닌 서버 통신 대응 방안(Unable to convert data to String) Alamofire을 통해 서버 통신을 하다가, 데이터가 한글일 때 Unable to convert data to String 오류를 마주했다. 알고보니 통신 중인 서버의 언어기반이 EUC-KR이지만, Swift의 기본 언어가 utf-8이기 때문에 해당 오류가 발생한다고 한다. 다양한 Swift개발자들의 조언과 구글링을 통해 Alamofire의 Data 자료형을 utf-8 기반의 NSString자료형으로 변경하고, NSString을 다시 data로 변경하고, 이것을 json 형태로 변경하면 된다. do { //다른 기반의 서버를 쓰고 있다면 CFStringEncoing.EUC_KR 변경하기. var dataString = NSString(data: data, encoding: CFStringConvertE.. 2022. 6. 8.
ios] cocoapods으로 swift library 추가하기 (이전에 cocoapods이 없는 분들은 먼저 homebrew를 깔고, cocoapods를 설치해주세요.) (시작 전에 터미널에 코코아팟이 설치되어 있는지부터 확인합니다. pod --version 터미널을 열고, 프로젝트가 있는 폴더로 이동 후 다음과 같은 명령어를 쳐주세요. cd /Users/~ /*본인의 프로젝트가 있는 경로를 입력해주세요*/ pod init 그럼 경로에 Podfile이라는 이름의 파일이 추가됩니다. 다음은 자신이 편안한 cmd file 수정 도구를 통해 해당 문구를 추가해줍니다. nano Podfile vi Podfile (저는 Alamofire 추가가 목적이어서 다음과 같이 입력했지만, 다른 라이브러리가 필요한 분은 다른 라이브러리를 입력하셔야합니다.) 이제 다음과 같은 명령어를 .. 2022. 6. 8.
ios 기초] 03. imageView, switch 안드로이드와 동일하게 ios도 이미지뷰를 사용한다. 해당 앱은 확대-축소 버튼으로 이미지를 늘리거나 줄이며, 스위치를 통해 전구 이미지를 끄거나 켜는 앱이다. 먼저 새 프로젝트를 생성한다. 먼저 Main 스토리보드를 켜서 ImageView, button, Switch를 각각 원하는 위치에 내려놓는다. 이제 Main과 연결된 뷰컨트롤러를 프로그래밍 해보자. 뷰 옆에 소스파일을 열어둔다. 이전과 동일하게 오른쪽 클릭을 해서 끌어오거나, 두 손가락으로 뷰를 코드로 끌고 와서 코드와 뷰를 연결시킨다. 먼저 객체가 변할(사진이 변하고, 확대라는 글씨가 축소로 바뀌는 등) 것들을 Outlet으로 지정한다. @IBOutlet var imgView: UIImageView! @IBOutlet var btnResize: .. 2022. 5. 10.
[iOS 오류] PageViewController segue.identifier = nil 오류 해결하기 View Controller 와 segue 연결을 진행했음에도, segue.indefier = nil 이 되어 viewController이 연결되지 않아 결국 pageviewcontroller unexpectedly found nil while implicitly unwrapping an Optional value 오류를 출력하게 되었다. Embed Segue로 연결도 되었고, 스토리보드ID도 정상적으로 들어갔는데 왜? 하고 봤더니 내가 너무 초보여서 아주 초보적인 실수를 한 것이었다.. segue 연결 ID도 새로 설정해줘야 하는 것이었다. 다시 해당 이름으로 identifier을 연결하면 찾을 수 있을 것이다. 2022. 5. 6.
반응형