본문 바로가기

반응형

전체 글

(51)
[iOS/Swift] ScrollView 자동스크롤 구현 (feat. LayoutCycle) PinLayout, FlexLayout으로 ScrollView를 포함하여 작성하였다. UITextView에 글을 입력하면 UITextVIew 전체 크기도 바뀌도록 구현하였다.하지만, UITextView 크기가 화면을 넘어가면 자동으로 스크롤이 안됐다.그래서 자동 스크롤 기능을 구현하기 위해 검색을 하여서 아래 블로그 글을 참조하였다. https://velog.io/@lwb112/%EC%8A%A4%ED%81%AC%EB%A1%A4%EB%B7%B0-%EC%9E%90%EB%8F%99%EC%8A%A4%ED%81%AC%EB%A1%A4 스크롤뷰 자동스크롤스크롤뷰 에서 아래에 내용이 추가될 때 마다 하단으로 자동 스크롤링 해주는 로직을 사용하였는데 , 원리를 이해해 보고자 분석을 해보았다.velog.io private..
[Git/GitHub] Fork와 Branch (모르고 Fork를 해버린 날..) 협업을 하려면 Contributor로 초대를 받아야 하는데 내가 이메일 주소를 오타로 잘못 보내서 초대를 안받았다. 나는 그런줄도 모르고 GitHub에 있는 코드를 Clone 하고 개발 후 오늘 팀원들과 모여 branch를 publish 해봤다.내 branch를 publish했는데 fork this repository를 하겠냐는 창이 떴다.어떻게 하면 되냐고 묻자 팀원분들이 한번 해보라 해서 일단 fork를 하였다. 그리고 push를 시험삼아 해보기로 해서 push를 하였다..나는 Fork를 처음 해봤기에 잘몰라서 일단 해봤는데팀원분들이 해당 GitHub주소에 내 branch가 안보인다고 하였다. 뒤늦게 알았는데 Fork를 해서 리포지토리가 내 계정에 따로 만들어져 있었고git remote -v 했을 때..
[iOS/Swift] FlexLayout, PinLayout 팀원분 중 한 분이 FlexLayout, PinLayout을 이번 프로젝트에서 사용해 보자고 하셨다.FlexLayout, PinLayout이 성능이 좋고, 채용공고에도 자주 나온다고 한다.이번 기회에 배워보면 좋다고 생각했다. FlexLayoutFlexLayout은 CSS의 Flexbox에 영감을 받아 만들어진 레이아웃 라이브러리다.AutoLayout, UIStackView보다 8~12배 정도 렌더링이 빠르다SwiftUI와 마찬가지로 선언형이고 구문 연결(Chainable)이 가능하다https://github.com/layoutBox/FlexLayout GitHub - layoutBox/FlexLayout: FlexLayout adds a nice Swift interface to the highly o..
[iOS/Swift] CocoaPods 실행 오류 (Framework not found, Linker command failed with exit code 1 (use -v to see invocation)) 프로젝트 작업 시 기존 GitHub에서 클론 후 브랜치를 새로파서 내가 맡은 개발을 하려고 하였다. 하지만 아래와 같은 오류가 계속 생겼다..Framework not found Linker command failed with exit code 1 (use -v to see invocation)  Grok한테 물어봐서 해결하려고 하였다.아래와 같이 CocoaPods, 빌드 캐시 정리를 하여도 오류가 계속 났다.# DerivedData 삭제rm -rf ~/Library/Developer/Xcode/DerivedData# Pods 디렉토리 및 Podfile.lock 삭제cd /Users/jeong-geunho/Codes/Swift/NBCamp-TeamBoardrm -rf Podsrm Podfile.lock# ..
[iOS/Swift] UITableView, UICollectionVIew 팀원 소개 앱 개발 시 UITableView와 UICollectionView 중 결국 UICollectionVIew를 사용하여 메인 뷰를 작성하기로 결정되었다.각각 어떤 특징을 지니고 있는지 헷갈려서 공부를 하였다. UITableView주로 단일 열(세로 리스트) 형태로 데이터 표시하는 데 사용.테이블 형태로, 각 행(row)은 동일한 높이 또는 다양한 높이 가질 수 있음.섹션과 행으로 구성되며, 일반적으로 리스트 스타일의 UI(예: 설정 화면, 연락처 리스트)에 적합.데이터 소스를 UITableViewDataSource 프로토콜을 통해 관리하며, 델리게이트(UITableViewDelegate)를 통해 사용자 상호작용 처리.단순한 리스트 UI에 최적화되어 있어, 세로 스크롤만 필요한 경우 성능이 더 나을..
[iOS/Swift] 스파르타 iOS 마스터 트랙 본 캠프 1일차 드디어 3월이 되었고 스파르타 iOS 마스터 트랙 본 캠프가 시작되었다. 아침 9시부터 Zoom으로 OT가 진행 후 다시 새롭게 팀이 생겼다.이번 주 프로젝트는 팀원 정보 소개 앱 만들기다.  각각 어떤 느낌으로 만들 건지 기획해 본 후에 추합 하기로 해서 간단히 피그마를 이용해 UI를 만들었었다.  메인 프로필 리스트 뷰는 UITableView가 아닌 UICollectionVIew를 사용하기로 결정나서 왼쪽 뷰는 안 쓰게 되었고, 오른쪽 뷰는 쓰이게 되었다. 그리고 개발을 어떤걸 이용하여 어떤 방식으로 할지 논의를 하였다. 팀원분이 요즘 모집공고에 PinLayout과 FlexLayout이 항상 나와서 이를 이용하자고 제안하여서 PinLayout과 FlexLayout을 이용하여 레이아웃을 만들기로 하였다..
[iOS/Swift] Info.plist 위치 바꾸기("Did you forget to declare this file as an output of a script phase or custom build rule which produces it?" 오류 해결) 현재 프로젝트에서 Info.plist는 루트 폴더가 아닌 Supporting이라는 폴더안에 들어가 있다.  만약 파일정리를 하려고 Info.plist 위치를 바꾸고 싶을 때, 단순히 옮기기만 하면 아래와 같은 오류가 난다.  'Build input file cannot be found: '/Users/jeong-geunho/Codes/Swift/CalculatorClone/CalculatorClone/Info.plist'. Did you forget to declare this file as an output of a script phase or custom build rule which produces it?' 해결방법해결방법은 간단하다. 프로젝트 TARGETS -> Build Settings로 간다음..
[iOS/Swift] Realm의 장단점과 문법 Realm 데이터베이스는 모바일 애플리케이션에서 자주 사용되며, 성능과 사용 편의성으로 유명하다. iOS 뿐만 아니라 Android 등 여러 환경에서 이용할 수 있는 크로스 플랫폼, 오픈소스 라이브러리이다. https://github.com/realm RealmRealm is a mobile database: a replacement for SQLite & ORMs. SDKs for Swift, Objective-C, Java, Kotlin, C#, and JavaScript. - Realmgithub.com  realm-swift 깃허브 리드미를 보면 다음과 같이 왜 Realm과 Realm을 왜 사용해야 하는지에 대해 나와있다. Realm을 사용해야 하는 이유직관적: 배우기 쉽고, ORM(Object ..

반응형