Programming(27)
-
[Swift] tap gesture
[ ๊ณต์ ๋ฌธ์ ์ฝ๊ธฐ ] https://developer.apple.com/documentation/uikit/uiview/1622496-addgesturerecognizer https://developer.apple.com/documentation/uikit/uitapgesturerecognizer // // UniverseSearchViewController.swift // Tars // // Created by ๊น์ํ on 2022/11/02. // import UIKit import SceneKit import ARKit enum Mode { case explore case search(planet: String) var titleText: String { switch self { case .exp..
2022.11.21 -
[UI-Kit] CollectionView Cell Selection / Deselection
# shouldSelecItemAt func collectionView(_ collectionView: UICollectionView, shouldSelectItemAt indexPath: IndexPath) -> Bool { guard let cell = collectionView.cellForItem(at: indexPath) as? SelectPlanetCollectionViewCell else { return true } if cell.isSelected { // TODO: ํ์ ๋ชจ๋๋ก ๋ณํ cell.planetNameLabel.textColor = .white cell.backgroundView = nil self.navigationController?.topViewController?.titl..
2022.11.15 -
[Swift] CollectionView Cell _ Lingo Feedback
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: SelectPlanetCollectionViewCell.identifier, for: indexPath) as? SelectPlanetCollectionViewCell else { return UICollectionViewCell() } let selectedPlanetName = planetList[indexPath.row].planetName let selected..
2022.11.01 -
[Swift] ๋ค๋ฅธ file (viewController) ๊ฐ์ ์กฐ์
private var isKorean: Bool = false func setISKorean(isKoreanBool: Bool) { self.isKorean = isKoreanBool }โ : Set method @objc private func englishSettingButtonTapped() { let englishTextViewController = EnglishTextViewController() englishTextViewController.setISKorean(isKoreanBool: false) self.navigationController?.pushViewController(englishTextViewController, animated: true) } viewController์ met..
2022.08.31 -
๐ firestore database ์ ๊ทผ ๋ฐ ์ญ์ code, firestore Queries ๐
https://hello-developer.tistory.com/52 https://hello-developer.tistory.com/53?category=951601 https://velog.io/@leesangsu200/Firestore์์-๋ฐ์ดํฐ-๊ฐ์ ธ์ค๊ธฐ https://github.com/DeveloperAcademy-POSTECH/MC3-Team3-Puhaha GitHub - DeveloperAcademy-POSTECH/MC3-Team3-Puhaha: ๋ฐฅ ๋จน์ธ? : ๋ถ๋ชจ์ ์๋ ๊ฐ ์์ฌ์ฌ์ง์ ๊ณต์ ํ ์ ์๋ ์ฑ ๋ฐฅ ๋จน์ธ? : ๋ถ๋ชจ์ ์๋ ๊ฐ ์์ฌ์ฌ์ง์ ๊ณต์ ํ ์ ์๋ ์ฑ . Contribute to DeveloperAcademy-POSTECH/MC3-Team3-Puhaha development b..
2022.08.28 -
โฟ iOS Swift Closure & @escaping ํด๋ก์ ์ ๋ฆฌ
https://www.youtube.com/watch?v=xiS5gJOIQxI https://dongminyoon.tistory.com/14 https://babbab2.tistory.com/81 https://babbab2.tistory.com/82 https://babbab2.tistory.com/83 // TODO: completion handler ์ดํด func translatinEnglishToKorean(text: String, completion: @escaping () -> Void) { // text๋ completion์ด๋ผ๋ ํด๋ก์ ๋ฅผ ๋ฐ์ ๊ฑฐ๊ณ , ๋ค์ ๋ด์ฉ์ ์ด ํจ์์ ์คํ ๊ณผ์ , ๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง์ closure ์คํ englishToKoreanTranslator.translate(tex..
2022.08.26 -
๐ Fileprivate ๋?
์ฒ์ ๋ณด๋ fileprivate ํค์๋ โ๏ธ private let emailLoginButton: CustomedLoginButton = { let button = CustomedLoginButton() button.setImage(UIImage(systemName: "envelope.fill"), for: .normal) button.tintColor = UIColor.black button.backgroundColor = UIColor.white button.setTitle("์ด๋ฉ์ผ๋ก ๊ฐ์ ํ๊ธฐ", for: .normal) button.setTitleColor(UIColor.black, for: .normal) button.titleLabel?.font = UIFont.systemFont(ofSize:..
2022.07.21 -
๐ฉ๐ป UUID(Universally Unique IDentifier)๋?
UUID๋ Universally Unique IDentifier์ ์ฝ์ด, ๋ฒ์ฉ ๊ณ ์ ์๋ณ์ - UUID ํ์ค์ ๋ฐ๋ผ ์ด๋ฆ์ ๋ถ์ฌํ๋ฉด ๊ณ ์ ์ฑ์ ์๋ฒฝํ๊ฒ ๋ณด์ฅํ ์๋ ์์ง๋ง, ์ค์ ์ฌ์ฉ ์์์ ์ค๋ณต๋ ๊ฐ๋ฅ์ฑ์ด ๊ฑฐ์ ์๋ค๊ณ ์ธ์ ๋๊ธฐ ๋๋ฌธ์ ๋ง์ด ์ฌ์ฉ - UUID๋ RFC 4122 ๋ฌธ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์ฑ : RFC๋ Request for Comments์ ์ฝ์ด -> ๋นํ์ ๊ธฐ๋ค๋ฆฌ๋ ๋ฌธ์ - ์ปดํจํฐ ๋คํธ์ํฌ ๊ณตํ ๋ฑ์์ ์ธํฐ๋ท ๊ธฐ์ ์ ์ ์ฉ ๊ฐ๋ฅํ ์๋ก์ด ์ฐ๊ตฌ, ํ์ , ๊ธฐ๋ฒ ๋ฑ์ ์์ฐ๋ฅด๋ ๋ฉ๋ชจ - RFC ํธ์ง์๋ ๋งค RFC ๋ฌธ์์ ์ผ๋ จ ๋ฒํธ๋ฅผ ๋ถ์ฌ -> ์ผ๋จ ์ผ๋ จ ๋ฒํธ๋ฅผ ๋ถ์ฌ ๋ฐ๊ณ ์ถํ๋๋ฉด, RFC๋ ์ ๋ ํ์ง๋๊ฑฐ๋ ์์ ๋์ง ์์ - ๋ง์ฝ ์ด๋ค RFC ๋ฌธ์๊ฐ ์์ ์ด ํ์ํ๋ค๋ฉด, ์ ์๋ ์์ ๋ ๋ฌธ์๋ฅผ ๋ค๋ฅธ RFC ๋ฌธ์..
2022.06.30 -
๐ARC (Automatic Reference Counting) : ์๋ ์ฐธ์กฐ ๊ณ์ฐ
ARC (Automatic Reference Counting) : Objective-C / Swift์ ๋ํ ์๋ ์ฐธ์กฐ ๊ณ์ฐ์ ์ ๊ณตํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฅ - ์ปดํ์ผ ์ ์ฝ๋๋ฅผ ๋ถ์ํ์ฌ ์๋์ผ๋ก retain, release๋ฅผ ์ ์ ํ ์์น์ ์ฝ์ - Objective-C ์์๋ ์๋์ผ๋ก reference count ์ฆ๊ฐ์ ํตํด ๊ฐ์ฒด ์ ์ง ๋ฐ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ -> ์๋์ผ๋ก ์์ฑ๋๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ฅผ ์๋์ผ๋ก ์์ฑํด์ค๋ค. ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ Data, Heap, Stack, Code ์ด๋ ๊ฒ 4๊ฐ์ง ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ์์ญ ์ค ํ ์์ญ๊ณผ ๊ด๋ จ์์ - Heap ์ class, closure ๋ฑ์ ์ฐธ์กฐํ(reference) ์๋ฃ ๋ค์ด ๋จธ๋ฌด๋ ๊ณต๊ฐ + ๊ฐ๋ฐ์๊ฐ ๋์ ์ผ๋ก ํ ๋นํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ -> ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ํ์ Heap ์์ญ์ ์ฐธ์กฐํ ..
2022.06.24 -
@IBAction & @IBOutlet ๐ค
StoryBoard ์์ ์ฐ๊ฒฐ ๊ณ ๋ฆฌ ๋ด๋น ๋ณ์๋ ํจ์๋ฅผ ์ ์ํ ๋ ์์ @IBAction / @IBOutlet ํค์๋ : StoryBoard์์ ๋ฒํผ์ด๋ ๋ ์ด๋ธ๊ฐ์ ์ปดํฌ๋ํธ์ ์ฐ๊ฒฐ IBAction - Event๊ฐ ์ผ์ด๋ ๊ฒฝ์ฐ ํธ์ถ๋๋ Action์ ์ ์ - ์ ๋ ฅ์ด ๋ค์ด์์ ๋ ์ด๋ค ํ๋์ ํ ์ง ๋ํ๋ธ๋ค - ์คํ ๋ฆฌ ๋ณด๋ ์์ ์ ์ธํ ๋ทฐ ๊ฐ์ฒด๊ฐ ํน์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ ํธ์ถ๋๋ ํจ์ - ํด๋น View๊ฐ ํน์ ์ด๋ฒคํธ๋ฅผ ๋ฐ์์์ผฐ์ ๊ฒฝ์ฐ ์ทจํ๋ ํ๋ ! IBOutlet - ๊ฐ์ ์ ๊ทผํ๊ธฐ ์ํ ๋ณ์, ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ๊ฒ - ์คํ ๋ฆฌ ๋ณด๋ ์์ ์ ์ธํ View ๊ฐ์ฒด๋ฅผ Interface Builder(IB) ๊ฐ ์์๋ณผ ์ ์๊ฒ ๋ง๋๋ ๊ฒ : ์ฝ๋ ์์์ ์คํ ๋ฆฌ๋ณด๋์ ๋ง๋ ๋ทฐ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ์ฐ๊ฒฐํด์ฃผ๋ ์ญํ ์ ..
2022.06.24