iOS📱/Swift16 [Swift] Content Mode ( Scale To Fill / Aspect Fit / Aspect Fill ) 안녕하세요🐶빈지식 채우기의 비니🙋🏻♂️ 입니다. 오늘은 원본 이미지 크기 및 비율에 따라 어떻게 보여지는지에 대해 알아보도록 하겠습니다.바로 가시죠!1. 개요우리는 UIImageView에 이미지를 넣을 때 어떤 비율로 넣을 지 고민할때가 많습니다.이럴 때 View 의 ContentMode 를 사용하는데 자세한 속성을 한번 알아보도록 하겠습니다.Fit : 이미지가 ImageView 에 꽉 차지 않고 비율에 따라 다르게 보여짐Fill : 이미지가 Imageview 에 비율과 상관없이 꽉참 사용 될 원본 이미지는 아래와 같습니다.2. Scale To Fill// iv 는 UIImageView 입니다.iv.contentMode = .scaleToFill원본 비율에 따라 그려지지 않고, UIImageVie.. 2024. 10. 8. [Swift] 클립보드 ( ClipBoard ) 안녕하세요🐶빈지식 채우기의 비니🙋🏻♂️ 입니다. 오늘은 클립보드에 텍스트 저장 하는 방법과 저장된 텍스트를 가지고 오는 기능을 포스팅 해볼까 합니다!1. 개요사용자가 앱 내의 한 위치에서 다른 위치로, 그리고 앱에서 다른 앱으로 데이터를 공유하는 데 도움이 되는 객체입니다.즉, 클립보드에 저장하여 다른 앱 또는 위치에서 사용이 가능하게끔 해주는 객체입니다.바로 구현 방법에 대해 알아보도록 하겠습니다.2. 구현 방법하나의 TextField 와 Button 을 생성합니다.TextField 에 텍스트 입력 후 버튼을 클릭 시, 클립보드에 저장된 메세지가 Alert 형태로 뜨게 구현합니다.import Foundationclass TestViewController: UIViewController { .. 2024. 5. 22. [Swift] TextView HyperLink 안녕하세요🐶빈지식 채우기의 비니🙋🏻♂️ 입니다. 오늘의 포스팅은!텍스트뷰 내에 텍스트가 URL 형태로 있을 시 하이퍼링크로 만들어주는 기능을 구현해보려고 합니다!바로 시작합니다!1. 필수 요소1-1. UIDataDetectorTypes텍스트 기반 콘텐츠에서 탐지할 정보 유형을 정의하는 상수입니다.상수라고 하네요 상수면 Enum 으로 정의된 것임을 모두 아시죠..?그럼 대체 어떤 것으로 정의되어 있느냐..!UIDataDetectorTypes 가 인식할 수 있는 유형들은 아래와 같이 존재합니다!phoneNumberlinkaddresscalendarEventshipmentTrackingNumberflightNumberlookupSuggestionmenoyphysicalValueall우리는 링크로 정의된.. 2024. 5. 21. [Swift] init 과 convenience init 의 차이 안녕하세요🐶 빈지식 채우기의 비니🙋🏻♂️ 입니다. 오늘은 init 과 convenience init 의 차이점에 대해 알아보도록 하겠습니다. 1. (Designated) init Designated init 이란 무엇인가?.? 바로 Swift의 초기화 이니셜라이즈 입니다. 즉 클래스에 선언된 모든 프로퍼티가 초기화 될 수 있게끔 해줘야합니다. Swift 에서는 Designated 는 생략하고 init 으로만 씁니다 :) import Foundation class ConvenienceInit { var name: String var age: Int var gender: String init(name: String, age: Int, gender: String) {// 반드시 프로퍼티 모두 초기화 self.. 2024. 2. 28. [Swift] Json Parsing ( JsonSerialization vs Codable ) 안녕하세요🐶 빈지식 채우기의 비니🙋🏻♂️입니다. 오늘은 Json 다루기에 대해 알아보도록 할건데요! 대표적으로 2가지를 뽑을 수 있습니다. JsonSerialization 과 Codable 자세히 알아보도록 하겠습니다! 1. JsonSerialization Json 과 Equivalent Foundation Object 사이에 변환을 담당하는 객체입니다. 여기서 말하는 Equivalent Foundation Object 란, Array 와 Dictionaray 입니다. . . 고로 Json > Array or Dictionary 또는 Array or Dictionary > Json 으로 변환해주는 객체라고 볼 수 있습니다. 우리는 정의되어있는 메서드 중 data, jsonObject 를 주로 사용하고 .. 2024. 2. 23. [ Swift ] URLComponents 알아보기 안녕하세요🐶 빈지식 채우기의 비니🙋🏻♂️입니다. 오늘의 포스팅은 URLComponents에 대해 알아보도록 하겠습니다. 1. 개요 간단히 말하여 URL을 구성하는 구조라고 볼 수 있습니다. 예를 들어 GET https://[hostname]/beani/test 위 URL을 기반으로 GET 방식을 통해 통신을 하고 싶다고 가정해봅니다. GET 방식이기 때문에 파라미터는 아래와 같이 URL 쿼리 스트링으로 들어가게 됩니다. GET https://[hostname]/beani/test?key1=\(value1)&key2=\(value1) 이런 식으로 요청할 수 있습니다. 위와 같이 URL String 뒤에 붙여서 사용할 수 있으나 오늘 알아보는 URLComponents를 사용하면 좀더 간단하고 실수 없이 .. 2023. 6. 15. [ Swift ] Expandable UITableView 만들기 안녕하세요🐶 빈지식 채우기의 비니🙋🏻♂️입니다. 오늘의 포스팅은 펼침이 가능한 UITableView 만들기입니다. 흔히들 Expandable UITableView 라고도 불리지요~ 실무에서 해당 기능을 사용을 하게 되었고~ 정리를 해보았습니다. Full Code 는 맨 하단에 Github 링크 올려놨으니 참고 부탁드립니다 ㅎㅎ 1. 프로젝트 구조 프로젝트 구조는 다음과 같습니다. 초록색 : Dummy Data를 위한 데이터 소스 빨간색 : 화면 출력을 위한 ViewController 소스 2. 소스 간단한 프로젝트 구조를 알아보았으니 작성된 소스에 대해 알아보도록 하겠습니다. 2-1. StoryBoard 간단히 TableView만 생성 후 ViewController에 연결합니다. 2-2. Model c.. 2023. 5. 23. [ RxSwift ] Observable & Subscribe 안녕하세요🐶 빈지식 채우기의 비니🙋🏻♂️ 입니다. 실제 업무를 진행하면서 RxSwift에 대해 접해볼 기회가 없었습니다. 다만 요즘 트랜드를 보면 RxSwift 사용이 점차 많아지는 것을 확인할 수 있었고 "개념이라도 알아야 실제 써먹던가 하지..." 해서 공부를 하게 되었습니다. 이번 포스팅 부터는 RxSwift 에 대해 제가 공부한 것들을 차근 차근 포스팅 하려고 합니당! 1. 개요 한가지 샘플 코드를 소개하면서 포스팅을 시작하도록 하겠습니다! //URL을 통한 데이터 수신 로직 func downloadJson(urlString: String, completion: @escaping (String) -> Void) { guard let url = URL(string: urlString) else {.. 2023. 5. 9. [ Swift ] 일급 객체 ( First-Class Object ) 안녕하세요 🐶 빈 지식 채우기의 비니🙋🏻♂️ 입니다. 오늘은 일급객체 ( First-Class Object ) 대해 알아보는 시간을 가지겠습니다. 1. 개요 Swift는 함수형 프로그래밍을 따르고 있습니다. 고로! Swift라는 언어는 일급 객체 ( First-Class Object) 에 부합하는 언어라고 할 수 있습니다. 바로 설명에 들어가도록 하겠습니다~ 2. 일급 객체 일급 객체? 2급도 있고 3급도 있나? ㅎㅎㅎ 껄껄s~~ 앜ㅋㅋㅋㅋㅋㅋㅋㅋ 네 ... 죄송합니다ㅋㅋ 정확히 아래의 조건을 충족한다면 일급 객체라고 할 수 있습니다! 1. 객체가 런타임에도 생성 가능하다. 2. 객체를 인자 값으로 전달할 수 있어야 한다. 3. 객체를 반환 값으로 사용할 수 있어야 한다. 4. 데이터 구조 안에 저장할.. 2023. 1. 26. [ Swift ] 제네릭 ( Generic ) 안녕하세요 🐶 빈 지식 채우기의 비니🙋🏻♂️ 입니다. 오늘은 제네릭 ( Generic ) 대해 알아보는 시간을 가지겠습니다. 1. 개요 제네릭이란 타입에 의존하지 않고 범용 코드를 작성할 때 사용한다. 우리는!! 제네릭을 사용함으로써 코드 중복을 피하고, 유연하게 작성할 수 있다. 흔히 사용하는 Swfit 표준 라이브러리 대다수는 제네릭으로 선언되어 있습니다~ 대표적으로 Array 와 Dictionary 가 있찌요! 정확한 제네릭에 대해서는 아래에서 설명을 드리겠습니다~ 1-1. 제네릭 함수 ( Generic Function ) 아아아주~ 간단하게 두 Int 값을 Print 출력하는 함수가 있고, 아래와 같이 구현해 보았습니다. func printInts(_ a: Int, _ b: Int) { prin.. 2023. 1. 10. 이전 1 2 다음 반응형