분류 전체보기
-
[iOS] UIDatePicker Prevent Keypad🍎iOS 2025. 4. 7. 19:40
UIDatePicker에는 숫자 부분 탭 시 직접 수정이 가능하도록 키패드가 올라오는 기본 동작이 있다.해당 동작을 막는 요건이 있어서 찾아봤다.KeyPad 동작 막는 것에 대해서 addTarget을 생각했지만 touchUpInside동작을 막는 것으로 처리하려고 했는데 해당 동작이 걸리지 않음이런 경우에 해당 UI 객체에 어떤 동작이 가장 우선적으로 실행 되는지 파악하는 방법은 allEvents로 addTarget 해주고 sender.allControlEvents를 출력해보는 방법도 있음let datePicker = UIDatePicker() // 모든 이벤트에 대한 액션 추가datePicker.addTarget(self, action: #selector(handleEvent(_:)), for: .al..
-
[iOS] UserAgent에 따른 브라우저 관련 이슈🍎iOS 2025. 4. 7. 19:22
회사 프로젝트에서 글 작성하는 화면(에디터)을 webView로 사용하고 있는데 최근에 글 작성화면으로의 진입 자체가 안되는 이슈가 있었는데 webView를 사용하면서 충분히 발생할 수 있는 이슈라고 생각해서 한번 기록해봤다.발생한 이슈는 아래와 같음1. [iPad] 에디터 3.0(webView)으로 작성된 글 상세화면 진입 시 errorURL Alert가 Present 되고 글이 로드 되지 않음2. [iPhone, iPad] 글, 업무 작성화면 진입 시 내용작성 불가 및 안내 메시지 화면 뜸3. [iPad] iOS 강제업데이트 팝업에서 업데이트 클릭 시에 안내 메시지 페이지로 이동이슈 원인 파악 중에 3가지의 이슈의 원인이 결국 아래의 한가지의 이유인 걸 알게되었습니다!원인💡WAF(웹 어플리케이션 방화..
-
[iOS] keyboardType에 의한 받아쓰기 기능 막힘🍎iOS 2025. 4. 7. 19:02
QA 중에 발견한 문제로 아이패드에서 댓글 작성을 하려고 하면 키보드의 받아쓰기 기능이 보이지 않는다는 이슈가 있었음해당 사용자의 아이패드는 iOS 18 beta 버전에 Folio Keyboard를 사용하고 계셨는데 혹시 OS 버전의 이슈인지 물리 키보드의 이슈인지 다양하게 확인해본 결과 두 문제 다 아니였음그리고 아이폰에서는 발생을 하지 않았음이유가 아이폰에서는 keyboardType을 default로 사용하고 있었기 때문에 문제가 발생하지 않음확인해본 결과 문제는 keyboardType 이였는데 keyboardType을 emailAddress로 설정한 경우에는 받아쓰기 기능이 활성화가 되지 않음공식 문서를 확인해본 결과 그런 부가적인 내용은 적혀있지 않아서 GPT에 질문해봤는데 아래와 같이 답변함💡..
-
성장에 대한 고민💭생각정리 2025. 1. 20. 20:37
최근 회사에서 개선 작업을 많이 맡아서 하고 있다.objc로 되어있는 레거시 코드(viewController 내부에 해당 화면에서 사용하는 모든 코드가 다 들어있음)를 분리하면서 swift로 컨버팅하는 작업들이다.사실 개선이라고 부르지만 단순 분리 및 컨버팅하는 작업이 진짜 해당 소스를 개선했다고 생각이 들지는 않는다.수치화할 수 있는 성능 개선을 한 것도 아니기 때문이다."굳이 개선한 걸 말해봐"라고 한다면 동료들이 objc보다는 swift에 대한 이해가 상대적으로 높기 때문에 swift로 컨버팅 및 분리 작업을 통해 생산성을 올려줬다 정도가 전부인 것 같다.지금의 나는 어느덧 만 2년이 다 되어가고 있고 신입 때와 비교했을 때 나는 얼마나 성장했나 하는 의문이 들었다.스스로 최대한 객관적인 평가를 해..
-
[Swift] Classes And Structures🍏Swift 2023. 3. 12. 23:47
안녕하세요! 오늘은 클래스와 구조체의 차이에 대해 한번 알아보겠습니다! 클래스 문법 붕어빵을 만들때 쓰는 틀과 같은 느낌으로 속성(property)과 method(메서드) 이렇게 2가지로 이루어짐 ex) 카카오톡 친구목록의 친구 한명씩의 프로필과 같은 것이 클래스를 이용해서 찍어낸 객체들 //클래스(틀)는 어디서도 접근 가능한 데이터의 영역에 저장 class Dog { var name = "강아지" var weight = 0 func sit() { print("앉았습니다.") } func layDown() { print("누웠습니다.") } } //객체(실제 데이터)는 참조타입으로 힙의 영역에 저장 var bori = Dog() bori.name bori.weight bori.sit() bori.layD..