" data-og-host="openapi-generator.tech" data-og-source-url="https://openapi-generator.tech" data-og-url="https://openapi-generator.tech/" data-og-image="https://scrap.kakaocdn.net/dn/ScnJN/hyWKH4joGZ/clJnDygrjpaTSktbrTdbQK/img.png?width=256&height=256&face=0_0_256_256"> Hello from OpenAPI Generator | OpenAPI GeneratorDescription will go into a meta tag in openapi-generator.tech OpenAPI Specifica..
Tuist를 적용하면서 해결했던 문제들을 모아보려고 합니다. 1. 윈도우 크기 에러에러아래와 같이 뷰 크기가 전체 화면의 2/3정도밖에 잡히지 않는 오류입니다.Tuist 첫 적용 후 빌드했을 때 종종 마주쳤습니다.해결Scenes관련 설정을 Info.plist에 추가하면 됩니다.UIApplicationSceneManifest UIApplicationSupportsMultipleScenes UISceneConfigurations UIWindowSceneSessionRoleApplication UISceneConfigurationName Default Configuration ..
상단 탭바를 통해 페이지를 좌우로 전환하는 화면을 구현할때 어떻게 해야할까요?UICollectionView, UIPageViewController, UIScrollView 등을 이용해볼 수 있겠습니다. 저는 CollectionView로 구현하기엔 너무 복잡해질거 같기도하고 Page요소는 보통 동적으로 바뀌는 부분은 아니라 굳이 CollectionView가 필요하지 않다는 생각이 들었습니다.해서 UIPageViewController로 먼저 구현을 해보았는데 결론적으로는 UIScrollView로 마저 구현하게 되었습니다. 왜 UIPageViewController를 사용하지 못했는지 공유하고자 포스팅 올립니다! UIPageViewController우선 저는 프로젝트에 RxSwift를 사용하고 있었기 때문에 U..
에러 메세지No such module '*' 분명 Project.swift 파일에서 dependencies에 .external로 외부 패키지 의존성을 설정해주었음에도 불구하고 모듈을 찾을 수 없다는 오류가 발생했습니다..심지어 Xcode 상에서 빌드할 때 잠깐 떴다가 사라지는데요.. 원인사실 해당 오류는 Tuist 4.0 이전 버전을 썼을때도 마주쳤던 문제였습니다.xcconfig 파일 분리를 위해 아래와같이 settings를 구성했습니다.public static func settings() -> Settings { return .settings( configurations: [ .debug(name: "dev"), .release(name: "pr..
원래 무한스크롤이라고 하면 맨 아래까지 스크롤하는 것을 트리거로 새로운 컨텐츠를 계속 로드해 화면에 붙여주는 형태를 말하는데요,저는 이와 다르게 위의 끝까지 스크롤했을 때 위로 컨텐츠가 붙는 기능이 필요했습니다.. (이전 채팅 보기 기능)이를 구현하기 위해 시도했던 다양한 방법들을 공유해보려고 합니다!ios v16에 맞춰 17부터 사용 가능한 API들은 사용하지 않았습니다. 1. refreshable + 컨텐츠를 배열에 insert하기먼저 떠올린 방법은 refresable을 이용하고 로드한 컨텐츠를 기존 배열 맨 앞에 insert해서 붙여주는 것입니다.struct ChatScrollTest: View { struct Message: Hashable { let id: UUID = .in..
https://github.com/realm/SwiftLint GitHub - realm/SwiftLint: A tool to enforce Swift style and conventions.A tool to enforce Swift style and conventions. Contribute to realm/SwiftLint development by creating an account on GitHub.github.comSwiftLint는 Swift 문법 스타일 정적 분석 도구입니다! 저는 팀원들과 코드 스타일을 맞추기 위해 Swift 스타일 가이드를 같이 스터디해보기도 했는데요,아무래도 모든 코드를 리뷰하고 지적할 수는 없다보니 조금씩 허용하게 되는 부분이 아쉬웠습니다.. 또한 저 혼자서도 꽤 규칙..
문제 상황프로젝트중 메모리 사용량이 계속 증가하는 현상을 보게 되었습니다.제가 만들고 있던 것은 사용자 앨범에서 이미지를 선택하는 기능으로, 이미지를 다루기 때문에 메모리 소모가 큰 작업입니다.따라서 이런 메모리릭은 치명적입니다.만약 계속 인스턴스가 해제되지 않고 쌓인다면 언젠가 메모리 오버플로우로 앱이 강제종료 될 것입니다.화면을 Dismiss해서 picker뷰를 해제했음에도 불구하고 메모리에서 사라지지 않아 새 picker를 열때마다 메모리가 증가하고 있습니다. 계속 반복한 결과 사용량이 2GB가 넘어가니 앱이 종료되었습니다. (아이폰 미니) 디버그툴로 릭 찾기이제 어디서 메모리릭이 발생했는지 찾아보도록 하겠습니다.앱을 실행시킨 후 Xcode 하단에 보시면 Debug Memory Graph 버튼이 ..
기존 프로젝트를 Tuist로 모듈화한 후 마주쳤던 문제에 대해서 간단하게 포스팅해보려고 합니다. 프로젝트 스펙: UIKit, SnapKit, Tuist, RxCocoa, RxSwift 문제상황 빌드시 SnapKit 라이브러리에서 오류가 발생했습니다. Thread 1: EXC_BAD_ACCESS(code=1, address=0x0) 해당 오류가 발생한 지점은 이렇게 단순히 Cell 내부에서 Contraints를 설정하는 부분이었습니다. ⬇️ 전체 코드 더보기 class RegisteredPetCell: BaseCollectionViewCell { // MARK: Constant private let IMAGE_SIZE: CGFloat = 70 // MARK: UI Component private let p..
- Total
- Today
- Yesterday
- 비동기/동기
- programmers
- MVC
- SWM
- TestCode
- 노션
- 아키텍쳐 패턴
- RX
- 프로그래머스
- GetX
- coordinator pattern
- reactive programming
- notion
- SwiftUI
- Swift Concurrency
- MVVM
- Flux
- DocC
- 소프트웨어마에스트로
- ios
- swift
- Flutter
- 코디네이터 패턴
- MVI
- Architecture Pattern
- 리액티브 프로그래밍
- healthkit
- design pattern
- Bloking/Non-bloking
- combine
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |