SWIFT 15

[iOS] UITextField 글자 수 제한하기

안녕하세요. 모리스입니다.😀기존 velog에 글을 옮겨오다보니.. 티스토리에서는 구어체로 쓰고 싶었지만 기존엔 문어체로 써놔서..글이뒤죽박죽입니다..!(양해부탁드립니다..😂)그럼 시작하겠습니다.... 이번 노트에서는 UITextField로 text를 입력받을 때 글자 수를 제안하는 방법에 대해 작성해 보려한다.예전에 React-Native로 앱을 개발할 땐 TextInput component에 maxLength를 지원해 간단히 조건만 추가해주면 됐는데 iOS에서는 이런 간단한 글자 수 제한조차 직접 다.... 구현해 줘야한다...ㅠ입력 받는 text를 UITextFieldDelegate로 읽어와 글자 수를 제안하도록 할 것이다.구현은 생각보다 간단하다. UITextFieldDelegate의 shoul..

iOS 2025.08.26

[Memory] 메모리 구조 (code, data, stack, heap)

안녕하세요. 모리스입니다.😀기존 velog에 글을 옮겨오다보니.. 티스토리에서는 구어체로 쓰고 싶었지만 기존엔 문어체로 써놔서..글이뒤죽박죽입니다..!(양해부탁드립니다..😂)그럼 시작하겠습니다.... 이번 노트에서는 swift ARC에 대해 공부하던 중 메모리 구조를 한번 정리면 좋을 것 같아 작성한다. 추후 swift의 메모리 관리 기법인 ARC에 대해서도 포스팅할 것이다.이번 노트에서는 메모리 구조에 대해서 알아보자.❓ 메모리 구조 ❓프로그램이 실행되기 위해서는 먼저 프로그램이 메모리(RAM)각 영역에 로드 되어야 한다.이때 운영체제(OS)는 메모리(RAM)에 프로그램을 실행하기 위한 공간을 할당해 준다.운영체제가 할당하는 영역은 크게 4가지(Code, Data, Stack, Heap)으로 나뉘..

CS 2025.08.26

[swift] public, private, private(set), fileprivate

안녕하세요. 모리스입니다.😀이번 노트는 swift의 접근제어자인 public, private, private(set), fileprivate의 차이에 대해서 알아보려합니다.publicpublic은 우리가 사용하는 가장 일반적인 접근제어자에요.public으로 선언한 경우 class나 struct(구조체) 밖에서도 값에 접근 및 수정이 가능해요.우리가 일반적으로 선언하는 상수,변수는 앞에 public 키워드가 생략된 것이에요.예제를 보면 School 구조체에 public으로 선언된 grade 변수는 구조체 외부에서 접근 및 수정이 가능해요.privateprivate은 클래스 또는 구조체 블럭 내에서만 접근 및 수정이 가능해요.예제를 보면 School 클래스 내부의 classRoom 함수에서는 접근이 가능하..

swift 2025.08.25

[iOS] Navigation Bar Button Items 간격 조정

안녕하세요. 모리스입니다.😀 이번 노트는 UINavigationController navigationItem의 navigation bar button item간의 간격조정에 대해 작성해 보려합니다. 이미지처럼 navigationBar 우측에 3개의 버튼을 위치 시켰는데 버튼의 간격이 너무 좁았다. 해서 위 버튼들의 간격을 20px만큼 조정해 보려합니다.여러 방법이 있겠지만 나는 위의 item들을 UIButton으로 각각 만들고 이를 UIStackView에 넣어 item간의 spacing을 주는 방법을 선택했어요.let trashButton = UIButton()trashButton.setImage(UIImage(named: "trashBlack"), for: .normal)let refreshButto..

iOS 2025.08.25

[iOS] UIImage 초기화 named와 resource

안녕하세요 모리스입니다.🙂요즘 블로그 이사하느라 과거에 살아서 티스토리에 현생의 글을 쓰는건 이번이 첫 포스트네요.!얼른 이사를 마치고 열심히 iOS앱에 관한 개발 포스트를 시작하고 싶네요 ㅎㅎ 이번 포스트는 iOS UIKit의 UIImage의 초기화 방식에 대한 내용입니다.많이들 UIImage에서 초기화 하실 때 다음과 같이 하실거예요.let imageView: UIImageView = UIImageView()imageView.image = UIImage(named: "ic_icon")// 또는let imageView = UIImageView(image: .init(named: "ic_icon"))위와 같이 UIImage를 초기화할때 named 프로퍼티를 사용해 이미지 이름을 넣어 초기화하죠! 그럼 ..

iOS 2025.04.11