본문 바로가기

SnapKit5

iOS) UIImagePickerController 지난 번 인스타그램 레이아웃을 작성한 뒤 이번엔 게시물을 업로드하는 기능을 구현하는 예제를 정리해볼까합니다. Right BarButton 적용할 액션 메소드를 추가해줍니다. ImagePicker뷰를 프레젠트 해주어야하므로 UIImagePickerController를 선언해줍니다. 이제 버튼을 누르면 이미지 선택하는 화면으로 넘어가게 되는 것을 볼 수 있습니다. 원래는 앨범 접근에 관련한 권한을 Plist에서 부여해야합니다. 따라서 Plist에서 Photo Library Usage Description을 추가합니다. 이미지 피커 컨트롤러의 속성에서 allowsEditing을 추가하여 true로 설정해주면 이미지 확대 및 편집이 가능하게 됩니다. 이제 Choose를 누른 후 동작을 구현합니다. Choose를.. 2022. 5. 11.
iOS) 스토리보드 없이 인스타그램 레이아웃 그리기 & ActionSheet 피드화면 만들기 우선 스위프트 패키지 매니저에서 스냅킷을 추가하였습니다. 스토리보드를 삭제하고 main을 검색하여 plist의 스토리보드 정보를 삭제합니다. class SceneDelegate: UIResponder, UIWindowSceneDelegate { var window: UIWindow? func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { guard let windowScene = (scene as? UIWindowScene) else { return } window = UIWindow(windowScene: windowSce.. 2022. 5. 10.
iOS) 스토리보드 없이 레이아웃 그리기 연습 & 공유기능 구현 예제 (2) 다음은 앱 탭의 UI를 구성해보겠습니다. UINavigationController 인베디드 우선 앱 뷰컨트롤러 파일을 만들고 클래스를 구현합니다. UINavigationBar가 필요하기때문에 AppViewController는 UINavigationController에 인베디드 되어야합니다. 앱 뷰 컨트롤러에는 세가지 이상의 UI컴포넌트를 사용합니다. 아래와 같이 UI스크롤뷰에 스택뷰가 AddSubView했을때 장점은 UI스택뷰는 서브뷰에 의해서 높이가 정해지기때문에 높이 변동이 생겨도 자동적으로 스택뷰도 늘어나기에 따로 계산할 필요가 없습니다. 임시로 스택뷰에 컴포넌트를 추가해주고 테스트 해보겠습니다. Feature Section의 UICollectionView 구현하기 이제 파란 부분의 커스텀 셀을 만.. 2022. 5. 8.
iOS) 스토리보드 없이 레이아웃 그리기 연습 & 공유기능 구현 예제 (1) 설정 스토리보드 없이 진행하기 위해 스토리보드 삭제. 남아있는 부분도 마저 삭제. Plist에서 main스토리보드가 표시되는 것이 Scene Delegate에 설정되어있었으나 삭제했으므로 수동으로 코드로 구현해주어야함. 가장 기본이 되는 윈도우와 뷰 컨트롤러를 설정해주는 메소드입니다. 오늘 사용할 프레임워크인 KingFisher와 SnapKit 또한 스위프트 패키지 매니저로 설치 레이아웃 그리기 1. 탭바 컨트롤러 기존의 뷰컨트롤러를 아래와 같이 이름과 상속을 변경 아직 탭바 아이템이 그려지지 않았기에 추가해줍니다. 그럼 다음과 같이 탭바가 그려지는 것을 확인할 수 있습니다. 투데이 뷰 컨트롤러 생성. 임시로 생성하던 뷰 컨트롤러를 투데이뷰 컨트롤러로 변경 사이즈 조절까지 마친 컬렉션 뷰 모습 커스텀셀을.. 2022. 5. 8.
[iOS] SnapKit 사용해보기, Preview Provider 예제 코드 링크 : https://github.com/eigen98/TIL/tree/master/Today-I-Learned-main/IOS/NetflixSnapKit Storyboard없이 ui를 구성해보려 합니다. 우선 스토리보드와 뷰 컨트롤러를 지워줍니다. 그대로 빌드하면 위와 같은 오류가 나오네요. 설정이 필요할 것 같아요. 우리가 만든 뷰 컨트롤러로 시작할 수 있도록 하겠습니다. TARGETS -> Info storyboard Name을 삭제 해줍니다. 이제 샘플 앱의 뷰 컨트롤러를 추가합니다. 이제 이 뷰 컨트롤러를 인지하고 띄울 수 있도록 SceneDelegate에서 설정합니다. SnapKit을 사용하기 위해서 Swift Package Manager를 통해 추가해줄 것입니다. Swift Pa.. 2022. 5. 6.
728x90