본문 바로가기

공부73

[Swift] UIkit 이미지를 이미지뷰에 맞추기(clipToBounds) 이번엔 UIkit에서 이미지를 이미지뷰에 맞추는 작업을 해보려고합니다. 우리가 일반적으로 인스타그램같은 각종 sns들에서 이미지를 올릴때 비율은 맞지만 이미지가 잘려서 올라가는 경우가 있습니다.그런것처럼 이미지를 비율은 맞지만 해당 이미지뷰의 영역밖으로는 못빠져나가게 하는 방법을 알려드리려고해요. 우선 기존에 이미지를 이미지 뷰에 넣을때 다음과 같이 코드를 작성할겁니다.private let testImageView: UIImageView = { let view = UIImageView() view.image = UIImage(named: "mock1") view.contentMode = .scaleAspectFill view.translatesAutoresizingMaskIntoCo.. 2024. 6. 24.
[스위프트] UIKit custom segmented control 이번시간에는 UIKit에서 세그멘트 컨트롤을 커스텀해서 쓰느법을 알아보려고 합니다.다른글들을 많이 찾아봤는데 다들 스냅킷만 쓰더라구요?이번 프로젝트는 스냅킷을 쓸만큼 뭐가 많지않아서 그냥 만들기로해서하루죙일 스냅킷 안쓰고 그걸 똑같이 그대로 UIKit 네이티브 코드로 옮겨서 했는데 안되더라구요...그래서 해외글도 찾아보니까 그냥 x좌표를 옮겨버리더라구요?(진즉에 찾아볼껄;;) 그래서 나온 코드입니다.. 와 진짜 너무 힘들었어요ㅠㅠ우선 결과물은 아래와 같습니다.  그럼 코드로 보시죠~예시코드private let segmentControl: UISegmentedControl = { let segment = UISegmentedControl() segment.insertSegment(withTitle: "Mo.. 2024. 6. 23.
[Swift] DateFormat 정리 DateFromat은 굉장히 많은 종류가 있습니다.매번 찾아보기 귀찮아서 정리해놔야겠다 생각을 전부터 하다 이제서야 하네요.. control + f or cmd + f 로 년도나 월 이런식으로 한방에 찾아서 보시면 편할거같아요 Year 년도포맷설명예시y생략없이 전체로 나옴.단, 0 생략 가능하면 생략2 -> 220 -> 20202 -> 2020202 -> 2022020 -> 2020yy두글자만, 0이 생략가능하면 생략2 -> 0210 -> 10124 -> 24024 -> 24202 -> 022024 -> 24yyyy4글자, 생략없음2 -> 000220 -> 20202 -> 02022024 -> 2024 Quarter 분기(1년은 총 4분기 입니다.)포맷설명예시Q숫자만 한글자1.1. -> 1QQ숫자만 두글.. 2024. 6. 21.
[스위프트] .fileImporter()로 파일 불러오기 이번에는 SwiftUI에서 macOS일때 파일 불러오기를 해볼겁니다.스유에는 .fileImporter라는 아주 좋은 메서드가 있죠..fileImporter가 실행될 경우위와같이 파일을 불러오기위해 Open 버튼이 달려서 나오는 패널이 열립니다.맥 많이 써보신분들은 익숙하죠?기본적인 형태는 다음과 같습니다..fileImporter(isPresented:allowedContentTypes:allowsMultipleSelection:onCompletion:)그럼 어떻게 쓰는지 알아볼까요?예시코드Button("Open") { openBool.toggle()}.fileImporter(isPresented: $openBool, allowedContentTypes: [.plainText].. 2024. 6. 17.
[스위프트] SwiftUI에서 NSSavePanel로 파일 저장하기 SwiftUI에서 파일을 저장할땐 NSSavePanel을 써야 합니다.하지만 이거는 AppKit에 있는거니까 끌어와서 써야겠죠?(해당 예시 코드는 macOS전용이며 만약 타겟에 iOS를 추가할 시엔 iOS에는 NSSavePanel이 없기 때문에 반드시 에러가 납니다.) 아래는 예시 코드입니다.import SwiftUIstruct ContentView: View { @State private var textString = "" var body: some View { VStack { TextEditor(text: $textString) Button("저장") { saveFile() } .. 2024. 6. 6.
[스위프트] SwiftUI Command Group으로 상단 메뉴 만들기 맥용앱에서 프로그램 실행하면 좌상단에 나오는 각종 메뉴의 추가 방법에 대해 알아봅시다! 좌측 상단 메뉴들위와 같이 좌측 상단에 애플 로고와 함께 있는 메뉴들입니다.(기본메뉴? 아님 앱 자체 메뉴? 뭐 그런거같아요? 용어가 뭔지 모르겠넹;;)기본적인 선언방식은 다음과 같이 두가지로 있습니다.CommandMenu() { content 클로저 }CommandGroup(before:) { content 클로저 }CommandGroup(after:) { content 클로저 }CommandGroup(replacing:) { content 클로저 } 실제로 써볼까요?우선 현재 진행중인 프로젝트의 ~~App.swift 파일로 가야 합니다.import SwiftUI@mainstruct SampleApp: App { .. 2024. 5. 13.
[스위프트] 날짜와 문자열 간 변환(Date <-> String) 이번에는 생각보다 꽤 많이 쓰는 경우인 Date 와 String간의 변환을 알아봅시다.이게 목데이터를 만들어서 쓸때 날짜가 들어가야 되는경우엔 아무래도 날짜를 내 맘대로 지정해서 넣는게 편하잖아요?그래서 필수적으로 들어가야된다고 보시면 되기때문에 아주 쓸모가 많습니다. String -> Date우선 날짜형식으로 된 문자열을 Date로 만들어 봅시다.import Foundationlet dateString: String = "2024-05-09 12:34:32"let dateFormatter = DateFormatter()dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"dateFormatter.timeZone = NSTimeZone(name: "UTC") as Time.. 2024. 5. 9.
[Mac] 한영전환을 키맵핑으로 해결하는 방법(hidutil을 사용한 방법. 삭제 포함) hidutil이라는 맥 내장 앱을 이용한 방법입니다. hidutil은 단순 키맵핑을 하기 위한 앱입니다. 이 방법을 쓸 경우 다른 프로그램을 설치하지 않으면서 심지어 한영전환의 딜레이도 해결하고, 프로그램 추가설치 없이 해결하는 것을 원하시는 분들께 도움이 될 것 같습니다.(저같이 말이죠) 저는 이미 키보드와 마우스를 로지텍 제품을 사용하고 있었기에 카라비너를 사용할 필요를 크게 못느끼고 있었는데요, 이 때문에 단 한 개만 키맵핑을 하기 위해서 또 새로 뭔가 깔아서 쓰기엔 좀 그래서 이 방법을 아주아주매우매우 애용합니다. 이 방법만의 단점이라기보단 이 방법을 포함해 카라비너등 각종 키맵핑을 이용한 방법의 단점이라면 affinity designer같은 특정 앱에서 f19가 입력되는 것으로 간주해서 한영전환.. 2024. 3. 30.
[Mac] 영어 연속입력 설정 터미널에 아래 명령어를 입력하면 영어 연속입력이 가능해집니다. defaults write -g ApplePressAndHoldEnabled -bool false 입력하고 로그아웃하고 다시 로그인 or 재부팅을 하면 그때부터 적용됩니다. 2024. 3. 29.
728x90