목록분류 전체보기 (179)
study record
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bJ7JQB/btruMpce2WU/hcAd7fTYjHz71TRthFK6zK/img.png)
offset을 쓸 때 "현재 뷰 constraint = 슈퍼뷰 constraint + offset 값”를 생각하고 세팅한다. button.snp.makeConstraints { make in make.top.equalToSuperview().offset(50) make.left.equalToSuperview().offset(50) make.right.equalToSuperview().offset(-50) make.bottom.equalToSuperview().offset(-50) } 기준이 되는 view에 맞추어서 제약을 설정한다. botton과 right는 마이너스 부호를 가지게 된다. inset을 쓸 때 button.snp.makeConstraints { make in make.edges.equalT..
프로젝트를 리팩토링하는 과정에서 어떤 값에 대해서 전달해주기가 너무 애매한 상황이 발생했다. 그래서 임시적으로 static var로 프로퍼티를 선언해두고 다른 곳에서 접근하기 쉽도록 임시방편해두었는데, 이게 좋은 방법인지 제대로 알아두고자 작성하게 되었다. 스위프트에서 static은 싱글톤 패턴을 적용할 때 사용했던 적이 있었다. static을 사용하면 프로그램이 종료될 때까지 메모리에 사라지지 않고 남아있기 때문에 많이 사용하는 것은 좋지 않다고 알고 있었다. static 프로퍼티는 애플리케이션 전체에서 유지되어야 하는 전역 설정을 객체 생성 없이 진행할 수 있다는 장점이 있다. 따라서 많은 객체를 생성하지 않아도 되어 비용을 줄일 수 있다. 인스턴스가 생성될 때마다 새로운 값이 필요하지 않은 경우, ..
iOS application states Not running : 그 앱이 시작되지 않았거나 시스템에의해 종료된 상태 Inactive : 앱이 포그라운드에서 동작하고 있지만 받은 이벤트가 현재 없는 상태. 앱이 다른 상태로 변화하기 때문에 이 상태에서 보통 짧게 머무른다. 잠깐 동안 inactive 상태에서 머무르는 시간은 유저가 화면을 닫았거나 시스템이 유저를 다른 이벤트에 반응하도록 하게 할 때이다. (문자나 전화가 온 경우) Active : 앱이 포그라운드에서 작동되고 이벤트를 받고 있는 상태. 포그라운드 앱들의 보통 상태이다. Background : 앱이 백그라운드에 있으며 코드가 실행되고 있는 상태. 대부분의 앱들은 종료되기 전에 짧게 이 상태에 들어간다. 그러나 엑스트라 실행을 요청하는 앱은 ..
rx를 활용해서 네비게이션을 하려는 과정에서 네비게이션 컨트롤러를 활용하는 것이 잘 작동하지 않았다. (코드로 UI를 구성 중이다.) 이 블로그를 참고하여 해결하였다. https://iamcho2.github.io/2021/03/28/navigation-controller-initial-setting SceneDelegate에 var window: UIWindow? var navigationController: UINavigationController? func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { // Use this method..