목록iOS (128)
꾸준히 안타치기

Alamofire 적용 진행순서 1. 코코아팟 설치 2. UI화면 만들기 - 버튼을 누르면, textView에 서버에 있는 값 가져와 보여주기 3. VIewController에서 파라미터에 값넣고 보내고, 응답 받아오기 4. http 통신허용 info에서 App Transport Security Settings의 +버튼 누르고, Allow Arbitrary Loads 추가 / NO를 YES로 변경 3. VIewController에서 파라미터에 값넣고 보내고, 응답 받아오기 import UIKit import Alamofire import SwiftyJSON class RegisterViewController: UIViewController{ var essentialFieldList = [UITextFie..

URLSession URLSession은 HTTP/HTTPS를 통해 콘텐츠(데이터)를 주고받는 API를 제공하는 클래스입니다. 이 API는 인증 지원을 위한 많은 델리게이트 메서드를 제공하며, 애플리케이션이 실행 중이지 않거나 일시 중단된 동안 백그라운드 작업을 통해 콘텐츠를 다운로드하는 것을 수행하기도 합니다. URLSession API를 사용하기 위해 애플리케이션은 세션을 생성합니다. 해당 세션은 관련된 데이터 전송작업 그룹을 조정합니다. 예를 들면 웹 브라우저를 사용 중인 경우 탭 당 하나의 세션을 만들 수 있습니다. 각 세션 내에서 애플리케이션은 작업을 추가하고, 각 작업은 특정 URL에 대한 요청을 나타냅니다. Request 서버로 요청을 보낼 때 어떤 (HTTP)메서드를 사용할 것인지, 캐싱 ..

https://youtu.be/x_JjtX4SCXY https://youtu.be/MpAOdkkMZxM 스택이란? 쌓아 올린 것 stack| stæk | 명사1.(건초 등의) 낟가리 (haystack), 쌓아올린 더미, 짚가리; (물건의) 쌓아올린 것; 《a stack또는 종종stacks》《주로 비격식》 다량〔의…〕, 다수〔의 …〕〔of…〕 ▸ be buried under a stack of postcards엽서 더미에 파묻히다. 스택뷰로 묶고 그안에서 전체 간격조절이 가능하고, 복붙하면 밑에 추가가 자동으로 된다. 위에 올라간 스택 팝으로 제거하기

import UIKit class ViewController: UIViewController { @IBOutlet var result: UILabel! // 알림창결과값 override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. } // 버튼 @IBAction func alert(_ sender: Any) { // 메시지창 객체 생성 let alert = UIAlertController(title:"선택", message: "항목을 선택해주세요", preferredStyle: .alert) // // 취소버튼 let cancel = UIAlertAction(title:"취소", sty..
https://www.boostcourse.org/mo326/lecture/16899/?isDesc=false iOS 앱 프로그래밍 부스트코스 무료 강의 www.boostcourse.org Operation Queue 연산 + 큐(줄을 짓다) = 대기열의 동작관리를 한다. Operation은 태스크(작업)와 관련된 코드와 데이터를 나타내는 추상 클래스입니다. Operation Queue는 연산(Operation)의 실행을 관리합니다. 대기열(Queue)에 추가한 동작은 직접 제거할 수 없습니다. 연산(Operation)은 작업이 끝날 때까지 대기열에 남아 있습니다. 연산(Operation)을 대기열에서 제거하는 방법은 연산(Operation)을 취소하는 방법뿐입니다. 취소하는 방법은 연산 객체(Opera..
사진첩에서 이미지 가져오기 테이블뷰에 사진첩에 있는 사진 가져와서 보여주기. 0. PhotoViewController를 생성한다. 1. Photos 프레임 워크를 임포트한다. 2. requeseCollection() 카메라롤을 가지고 오는 함수를 작성한다. 3.. 테이블을 등록하고, 테이블뷰 셀설정을 해준다. 셀설정안에서 cell의 index를 가져온다. 이미지 매니저로 사진을 요청한다. 4. 뷰가 로드 되었을때 보일 case를 작성한다. 허용되었을때만, 데이터를 다시 불러온다. 5. 스토리보드로가서 인터페이스를 작성한다. 테이블뷰를 작성한다. 셀을 올린다. identifier값에 cell이라고 작성 6. 스토리보드에서 테이블뷰에 -> 데이터 소스를 쭉끌어 뷰컨트롤러와 연결한다. 7. 뷰컨트롤러에 -> ..

진행순서 1. Json 데이터를 Assets에서 import해서 가져온다.(~~. json) -> json데이터 준비 2. command + N 해서 스위프트 파일을 생성 / 가져올 json형식에 맞게 struct를 만든다. (Friend.swift 생성) Json을 사용할수 있도록 Codable을 써준다. 3 .Main.storyboard에서 ViewController를 생성한다. 4. TableView를 끌어다가 놓는다. + TableViewCell을 끌어다가 놓는다. 5. ViewController의 클래스를 생성하고 (command + N -> JsonViewController라는 클래스명으로 생성) 6. Main.storyboard에서 ViewController에 JsonViewControlle..
se·gue|séɡwei|명사《이탈리아어》1.〔음악〕세구에: 한 악장·악부(樂部)에서 사이를 두지 않고 계속하는 일.2.앞의프로그램과 끊어지지 않고 계속되는 프로그램.동사, 자동사1.〔음악〕 (바로 뒤의 악장·악부로) 계속하다, 계속해서 연주하다. 2.단절 없이 계속되다. 3.〔…에서; …으로〕 변신하다 〔from …; to …〕. 세그는 IOS에서 여러화면을 사용할 경우, 화면 전환을 위해 사용된다. UIStoryboardSegue 클래스 UIStoryboardSegue 클래스는 UIKit에서 사용할 수 있는 표준 화면전환을 위한 프로퍼티와 메서드를 포함하고 있습니다. 또 커스텀 전환을 정의하기 위해 서브클래스를 구현해서 사용할 수도 있습니다. 필요에 따라서 UIViewController의 perfor..
:: 조건문 :: if-else switch 1. if-else 구문 if-else 구문의 기본 형태 if만 단독으로 사용해도되고, else, else if 와 조합해서 사용 가능합니다. if 뒤의 조건 값에는 Bool 타입의 값만 위치해야 합니다. 조건을 감싸는 소괄호는 선택사항입니다. if 조건 { /* 실행 구문 */ } else if 조건 { /* 실행 구문 */ } else { /* 실행 구문 */ } if-else의 사용 let someInteger = 100 if someInteger 100 { print("100 초과") } else { print("100") } // 100 // 스위프트의 조건에는 항상..
TableVIewController.swift 테이블에 동적으로 데이터 추가하기 현재 날짜를 가져와 행에 추가하는 코드 import UIKit class TableViewController: UIViewController, UITableViewDelegate, UITableViewDataSource{ @IBOutlet weak var tableView: UITableView! let cellIdentifier: String = "cell" let korean: [String] = ["가","나","다","라","마","바","가","나","다","라","마","바"] let english: [String] = ["A","B","C","D","E","F","A","B","C","D","E","F"] ove..

테이블뷰 생성 동적 프로토타입(Dynamic Prototypes) 셀 하나를 디자인해 이를 다른 셀의 템플릿으로 사용하는 방식 같은 레이아웃의 셀을 여러 개 이용해 정보를 표시할 경우 데이터 소스(UITableViewDataSource) 인스턴스에 의해 콘텐츠를 관리하며, 셀의 개수가 상황에 따라 변하는 경우에 사용 정적 셀(Static Cells) 고유의 레이아웃과 고정된 수의 행을 가지는 테이블뷰에 사용 테이블뷰를 디자인하는 시점에 테이블의 형태와 셀의 개수가 정해져 있는 경우 사용 셀의 개수가 변하지 않음 테이블뷰 구성요소 테이블뷰를 구성하기 위해 꼭 알아야 하는 개념에는 셀(cell), 델리게이트(delegate) 그리고 데이터 소스(data source)가 있습니다. 테이블뷰 셀 테이블뷰 셀(T..
https://www.boostcourse.org/mo326/lecture/256094?isDesc=false iOS 앱 프로그래밍 부스트코스 무료 강의 www.boostcourse.org import UIKit //delegate 메소드 2개가 필요 class SecondViewController: UIViewController,UIImagePickerControllerDelegate, UINavigationControllerDelegate { @IBOutlet weak var nameLabel : UILabel! @IBOutlet weak var ageLabel : UILabel! // 이미지 피커 lazy var imagePicker : UIImagePickerController = { let pi..

Target-Action 디자인 패턴 ( 단순한 액션 ) / 다양한 상황에 맞게 할때는 - delegate 디자인 패턴 활용 Target-Action 디자인 패턴은 iOS 환경에서 많이 사용하는 디자인 패턴 중 하나입니다. Target-Action 디자인 패턴에서 객체는 이벤트가 발생할 때 다른 객체에 메시지를 보내는 데 필요한 정보를 포함합니다. 액션은 특정 이벤트가 발생했을 때 호출할 메서드를 의미합니다. 그리고 타겟은 액션이 호출될 객체를 의미합니다. 이벤트 발생 시 전송된 메시지를 액션 메시지라고 하고, 타겟은 프레임워크 객체를 포함한 모든 객체가 될 수 있으나, 보통 컨트롤러가 되는 경우가 일반적입니다. 직접 타겟이 될 객체에 액션에 해당하는 메서드를 호출하면 될 텐데 굳이 Target과 Act..

Delegation 델리게이션에 대해 자세히 살펴보기 전에, Delegate의 사전적 의미를 알아두면 내용을 이해하는 데 도움이 됩니다. Delegate: [명사] 대표(자), 사절, 위임, 대리(자) [동사] (권한, 업무 등을) 위임하다, (대표를) 선정하다 델리게이트란? 하나의 객체가 다른 객체를 대신해 동작 또는 조정할 수 있는 것을 의미 객체가 해야할 일을 부분적으로 확장하여 대신해서 처리를 해준다. 하나의 객체가 모든일을 처리하는 것이 아니라 처리해야할 일 중의 일부를 다른 객체에 넘기는 것을 말한다. 그 업무를 잘하는 사람에게 일을 대신해달라고 요청하는 것 델리게이트는 쓰면 뭐가 좋은가? 기능을 위임할 수 있는 객체가 있다는 것은 그만큼 직접 구현해야하는 부분이 적다는 뜻 -> 효율성이 높다..