분류 전체보기 104

iOS 앱 개인정보 처리방침

'MapleGuide’는 개인정보보호법에 따라 이용자들의 개인정보 보호 및 권익을 보호하고자 다음과 같은 처리방침을 두고 있습니다. 당사는 개인정보처리방침을 개정하는 경우 앱 화면 및 웹사이트 공지사항을 통하여 공지할 것입니다. ​ 1.개인정보의 처리 목적 : 당사에서 개인정보를 별도로 저장하거나 이용하지 않습니다. ​ 개인정보 파일 현황 당사는 별도의 개인정보 파일을 사용하지 않으며 저장하지도 않습니다. 당사는 쿠키를 저장하지 않으며 이용하지 않습니다. 이용자가 이에 대해 의문이 있다면 해당 서비스(애플 및, 각 광고 미디어)로 직접 연락해야 합니다. ​ 개인정보의 처리 및 보유기간 당사는 개인정보를 직접적으로 저장하거나 보유하지 않습니다. 따라서 당사는 이용자의 개인정보를 처리하는 내용도 보유기간도 ..

카테고리 없음 2023.04.24

콜렉션 타입(Collection Types) - 셋(Sets)

셋(Sets) set 형태로 저장되기 위해서는 반드시 타입이 hashable이어야만 합니다. Swift에서 String, Int, Double, Bool 같은 기본 타입은 기본적으로 hashable 입니다. Swift에서 Set 타입은 Set으로 선언 합니다. 빈 Set생성 var letters = Set() print(letters.count) // 0 letters.insert("a") letters = [] 배열 리터럴을 이용한 Set생성 var favoriteGeneres: Set = ["Rock", "Classical", "Hip hop"] Swift의 타입추론으로 아래와 같이 선언도 가능 합니다. var facoriteGeneres: Set = ["Rock", "Classical", "Hip ..

iOS/Swift 2023.04.21

콜렉션 타입(Collection Types) - Array

Swift에서는 콜렉션 타입으로 Array, Set, Dictionary 세 가지를 지원 합니다. 콜렉션의 변경 Array, set, Dictionary를 변수(var)에 할당하면 이 콜렉션은 변경 가능하고 상수(let)에 할당하면 변경 불가능 합니다. 배열(Array) 배열의 축약형 문법 배열 타입은 Array로 적을 수 있는데 축약형으로 [Element]형태로 사용할 수도 있습니다. 빈 배열의 생성 아래와 같이 Int형 빈 배열을 생성할 수 있습니다. var someInts = [Int]() someInts.append(3) // 배열에 3을 추가 했습니다. someInts = [] // 배열을 비웠습니다. 배열의 아이템 타입은 그대로 Int로 유지 됩니다. 기본값으로 빈 배열 생성 repeating..

iOS/Swift 2023.04.19

TableView, CollectionView Cell클릭 흔적 없애는 방법

애플 공식문서에 지원하는 메서드를 활용해 보자 설명은 "지정된 인덱스에서 항목을 선택 취소합니다".라고 되어 있다. 실제 적용해 보자. func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { } 함수에서 아래 코드 추가해준다 self.collectionView.deselectItem(at: indexPath, animated: true) 이렇게 되면 다시 돌아와있을때 선택한 셀에 선택한 효과가 없어져 있다.

Refresh Control 위치, Navigation LargeTitle

Refresh Control 위치, Navigation LargeTitle 연락처 앱을 만들던 중 Refresh 기능을 넣었을 때, 개인적으로 LargeTitle 넣었을때 ActivityView의 위치가 어색해 보여서 수정할 수 있는지 찾아 보았다. 그런데 Navigation Title 스타일에 따라 ActivityView의 위치가 다르게 표시 되었고, 커스텀 방법은 찾지 못했다. 공식문서에서 자료를 찾으려고 해도 문서로 되어 있는건 결국 찾지 못했다. 그 대신 아이폰 기본 앱 중 메일, 연락처을 벤처마킹 해보니 아래의 사진과 동일해서, 내부적으로 설정되어 있는 따른 이유가 있을 것 같다. Nomal Large

프로그래머스 - 크기가 작은 부분문자열 (Swift, Level1)

문제 👇 https://school.programmers.co.kr/learn/courses/30/lessons/147355 문제설명 📝 숫자로 이루어진 문자열 t와 p가 주어질 때, t에서 p와 길이가 같은 부분문자열 중에서, 이 부분문자열이 나타내는 수가 p가 나타내는 수보다 작거나 같은 것이 나오는 횟수를 return하는 함수 solution을 완성하세요. 예를 들어, t="3141592"이고 p="271" 인 경우, t의 길이가 3인 부분 문자열은 314, 141, 415, 159, 592입니다. 이 문자열이 나타내는 수 중 271보다 작거나 같은 수는 141, 159 2개 입니다. 문제풀이 ✅ t, p의 길이 가져오기 String -> Array로 변환(p의 값과 대조를 위해) 문제풀이 답 fu..

Swift) 코드로 UITableView 구현하기

Swift) 코드로 UITableView 구현하기 코드로 UITableView를 구현해 봅시다. TableView란?? A view that presents data using rows in a single column. -> "단일 열의 행을 사용하여 데이터를 표시하는 보기 입니다" 라고 공식문서에서 소개해주네요 구현된 TableView를 보자면 아래처럼 각각의 표처럼 View가 되어 있고 하나의 칸마다 데이터가 들어간 것을 볼 수 있네요. 또한 관련 행을 섹션으로 그룹화하여 콘텐츠를 관리하거나 탐색할 수 있습니다. 구성 UITableView는 테이블의 기본 모양을 관리합니다. 하지만 앱은 실제 컨텐츠를 표시하는 각각의 Cell(UITableViewCell)을 제공합니다. 아래의 셀 구성은 아래 처럼 ..

iOS/Swift 2023.02.04

.gitignore 활용

https://www.toptal.com/developers/gitignore 1. 위의 사이트가서 관리하고 싶은 키워드를 기입한다. 2. 만약 이미 작업한 프로젝트를 푸시를 했고, 이후에 적용을 하고 싶다면? 이미 푸시를 했다면, 깃에서 해당 파일들을 트래킹 하고 있기 때문에 이를 제거해야 한다. 과정은 - 먼저 위의 과정과 똑같이 .gitignore를 작성하고 저장한다. - 그리고 레포에 푸시를 하기 전에 한 가지 코드를 추가해서 입력하면 된다. - git rm -r --cached . (-> 캐시에 등록된 트래킹 중인 파일들을 삭제하는 명령어) 이후에는 마찬가지로 - git add . - git commit -m 'commit message' - git push origin main