iyOmSd/Title: Swift 106

[Swift] Push, Present 화면 전환하기

ㅅ안녕하세요😄😄 앱을 개발하는 과정에서 화면 전환은 필수이기도하고 기본이죠 오늘은 전환하는 여러 방법을 알아 볼게요 우선 기본적으로 화면을 전환하는 방법은 Navigation을 이용해서 Stack처럼 쌓아가는 방식과 그냥 위에 띄우는 Present형식 이렇게 2가지가 존재해요 Navigation은 push, pop으로 화면을 띄우고, 제거하고 Present는 present와 dismiss로 화면을 띄우고, 제거해요 . . . . 이제 시작해볼게요 우선 화면을 전환해야하니까 화면하나를 추가해줘야해요! ViewController를 하나 만들어주고 .swift파일도 하나 만들어줄거에요 그리고 새로만든 뷰컨트롤러를 클릭하고 4번째 칸에있는 Class란에 만든 .swift파일을 써넣어줄거에요 SecondViewC..

iyOmSd/Title: Swift 2019.10.01

[Swift] 날짜형식 변환하기, 시간차 구하기

+ 2020.03.02일 추가 업로드 안녕하세요😄😄 이번에는 날짜형식의 데이터를 자신의 입맛에 맞게 바꾸는 작업과 두 날짜간 시간차를 구하는 방법을 알아볼게요 가지고있는 날짜데이터를 원하는 패턴으로 나타내고 싶을 때가 있죠!! DateFormatter 이란 클래스를 이용할거에요 //데이터형식 2019-09-17 13:40:00 let format = DateFormatter() format.dateFormat = "yyyy-MM-dd HH:mm:ss" guard let startTime = format.date(from: self.start) else {return "?"} guard let endTime = format.date(from: self.end) else {return "?"} //원하는 형..

iyOmSd/Title: Swift 2019.09.17

[Swift] 키보드에 가려지는 뷰 보이게하기

안녕하세요😄😄 프로젝트를 진행하다보면 텍스트를 쓰는상황이오는데 아래에 쓰는 창이 있다면 아무 설정을 안할경우 아래에 있는 뷰가 키보드에 가려져서 보이지 않아요 보지않고 칠 순 있긴해요..! 하지만! 당연히 불편해요 오늘은 이 문제에 대해 해결 해보려해요 들어가기 앞서 이문제는 버전에 따라 다른것 같더라구요 밑에서 다시 언급하겠지만 저는 Swift5 버전으로 작성했습니다!! . . . 우선 비교 영상부터 볼게요 불편함을 느껴야 이걸 꼭해야하나? 라는 의문이 사라질거에요 왼쪽과 같이 키보드에 따른 위치를 변화하지않는다면 텍스트뷰의 밑에 있는 내용을 볼 수 없을 뿐만아니라 만약 저 뷰가 더 아래있다면 아예 볼수 없을거에요!! 옵저버 생성 우선 키보드가 켜지고 꺼지는 이벤트를 받아올 옵저버를 생성할거에요 //o..

iyOmSd/Title: Swift 2019.09.09

[Swift] TableView를 이용한 Expandable 효과 만들기

안녕하세요😄😄 프로젝트를 하다보면 뷰가 늘어나는 효과를 줘야할 때가있어요 안드로이드에서는 지원해주고 라이브러리들도 많아요 저는 iOS공부하면서 알맞은 라이브러리를 찾기도 힘들더라구요 그래서 직접 만들어서 구현해보기로 했습니다.!! 우선 스토리보드에 셀2개를 생성할거에요 클릭하기전에 보여질 셀과 클릭후 펼쳐질 셀이 될거에요 이제 셀에 넣어줄 데이터가 있어야겠죠?? 구조체를 하나만들거에요 struct Notice{ let date: String let title: String let content: String var open = false mutating func dateFormat() -> String{ guard let s = self.date.split(separator: " ").first else..

iyOmSd/Title: Swift 2019.08.24

[Swift] Auto Login 자동로그인 구현

로그인이 필요한 앱이 있다면 대부분 자동로그인 기능이 있죠 이 기능을 Swift에서 제공해주는데 정말 간단해요 guard let id = self.idTextField.text else {return} guard let pw = self.pwTextField.text else {return} if self.autoLoginCheckBox.on{ UserDefaults.standard.set(id, forKey: "id") UserDefaults.standard.set(pw, forKey: "pw") } 위와 같이 체크박스가 눌렸을때 자동로그인이 되도록 할건데요 UserDefaults라는 클래스를 제공해주는데 set함수를 이용해서 원하는 key태그와 값으로 저장할 수 있어요 저 같은경우는 'id'태그에 i..

iyOmSd/Title: Swift 2019.08.20

[Swift] ARC(Automatic Reference Counting) 스위프트 메모리 관리

이글은 야곰님의 '스위프트 프로그래밍'책을 공부하면서 작성한 글입니다.^^ 스위프트를 공부하다보면 변수명앞에 weak 이나 가끔 strong이 붙어 있는것을 볼 수 있어요 스위프트는 자동으로 메모리를 관리해주기 때문에 프로그래머가 메모리관리에 신경을 덜 쓸 수 있어서 편리해요 이 방식이 ARC 이에요 참조 횟수 계산은 참조타입인 클래스의 인스턴스에만 적용이 되며, 값타입인 열거형이나 구조체에는 적용되지않아요 자바에도 이러한 비슷한 기능이 있는데 가비지 컬렉션(Garbage Collection)이라고 많이 들어보셨을꺼에요 서로 메모리는 관리하기 위해 존재하죠 우선 둘의 차이를 볼게요 ARC 가비지 컬렉션 작동 시점 컴파일시 프로그램 동작 중 장 컴파일당시에 인스턴스의 해제시점이 정해져있어서 언제 메모리에서..

iyOmSd/Title: Swift 2019.08.12