4월, 2023의 게시물 표시

[SwiftUI 공부] Padding 잘 사용하기.

이미지
  [SwiftUI 공부] Padding 잘 사용하기. 안녕하세요 물먹고하자 입니다 :) 오늘은 틈내서 하는 SwiftUI 공부 당연히 이미 사용하고 있지만, 나름대로 정리를 해놓으면 나중에 꼭 도움이 되서 정리합니다. 바로시작    Padding 알아보기 Padding :   https://developer.apple.com/documentation/swiftui/view/padding(_:_:) SwiftUI에는 StackView와 오토레이아웃 적용개념이 기본으로 탑재 되면서 컨포넌트별 마진 을 줄때 사용하는 함수입니다. (View의 모든 곳에서 사용한다고 생각하시는게 좋을것 같습니다.) 기본 Padding 샘플 기본적인 Padding 사용입니다. 인자값 없이 사용가능하며, Int값만 넣으면 (위, 아래, 왼쪽, 오른쪽) 동일 하게 Padding이 적용됩니다. EdgeInsets 샘플 EdgeInsets 을 활용하여 위, 아래, 왼쪽, 오른쪽을 각기 다른 Padding값 을 설정 할 수 있습니다. 처음에 저는 왼쪽 오른쪽 Padding값만 다르게 사용하려고 했었으나, 인자값만 길어지고, 코드가독성은 좋지 않아서 딱히 추천드리진 않습니다. (이유 아래) Padding 활용 (Edge.Set) 업무중에 해당 방법을 제일 많이 사용하고 있으며, 처음에는 몰라서 EdgeInsets 의 숫자를 대입해서 사용하였지만, Edge.Set 을 활용해서 사용하는게, 오토레이아웃 형식과 비슷하고, 간결한 느낌 이 들어서 제일 많이 사용하고 있습니다.    마무리 오늘은 SwiftUI 의 Padding 에 대해서 간단하게 정리해보았습니다. 디자인적인 간격때문에 가장많이 사용하는 기능중 하나인것 같습니다. 처음에는 Edge.Set 방법을 몰라서 EdgeInsets 을 통한 각각 Padding을 주었었는데, Edge.Set 을 통해서 사용하면, 꼭 오토레이아웃을 코드화 시킨느낌 이여서 눈에 쏙 들어오더군요. 그리고 SwiftUI에서는 Padding을 사용하는 위치에 따라

[iOS] VisionKit (텍스트 값, 위치) 가져오기 2편

이미지
   [iOS] VisionKit (텍스트 값, 위치) 가져오기 2편 안녕하세요 물먹고하자 입니다 :) 지난번  [VisionKit 1탄 링크]  소개드렸던 부분의 2탄으로 이번에는 문서스캔한 이미지의 텍스트 값, 위치를 가져와서 표현해 보는 샘플을 진행해볼까 합니다.   애플공식문서 & 참고링크 공식 :  https://developer.apple.com/documentation/visionkit 참고 :  https://developer.apple.com/documentation/vision/vndetectedobjectobservation 작업본 Git :  https://github.com/kimjiwook/VisionKitSample   참고영상 문서스캔 > 이미지분석 > 이미지위에 위치값 표기, 텍스트 뽑아오기 예제    이미지 좌표값 주의사항 진행하기 앞서 우리가 알고 있는 UIKit Frame 그리는 방식이랑 VisionKit에서 Frame(?) 위치값 그리는 방식을 잠시 설명드리겠습니다. (저도 이부분은 왜?? 다른지 솔직히 모르겠더라구요) 참고링크 :  https://stackoverflow.com/questions/64759383/bounding-box-from-vndetectrectanglerequest-is-not-correct-size-when-used-as-chil 왼쪽은 UIKit 기반으로 Frame을 잡았을 때 예시 왼쪽위(0,0) 기준 오른쪽은 VisionKit 기반으로 Frame 표기시 왼쪽아래(0,0) 기준 #. 심지어 0~1 비율로 표기됨 좌표값 무시하고, UIKit 기반처럼 왼쪽위에서 부터 그리면 Y축이 뒤집어진 느낌 으로 표기됨. 상세한 정보를 추가그림으로 설명드리자면, 1. 이미지 정보 - width = 1474, height = 2140 2. "컴퓨터데스크를" 정보 - VisionKit, VNRecognizedTextObservation을 통해 구해온 정보 : (0

[Xcode 14.3] 아카이브 오류 긴급대응 Command PhaseScriptExecution failed with a nonzero exit code

이미지
   [Xcode 14.3] 아카이브 오류 Command PhaseScriptExecution failed with a nonzero exit code 안녕하세요 물먹고하자 입니다 :) 지난주에 Xcode 14.3, iOS 16.4 업데이트 가 뜨면서 빌드부분에 오류 가 있었으나, 간단하게 해결된상태에서 또 급하게 앱을 올리려고 하니 아카이브가 안되더군요 ㅠㅠ 일단 급한나머지 공식적인 해결방법은 아닌것 같으나  최근 웹상에서 찾은 내용 적용후 정상적으로 아카이브 된 내용 공유드립니다.   에러발생 Xcode 14.3 업데이트 이후 아카이브 오류발생 내용상으로 Symlinked 에서 파일 또는 폴더를 못찾았다는 내용 저는 FMDB에서 발생을 했는데, Git, stackoverflow 등등 라이브러리만 다르고 발생한 에러는 같은것 같아요. 열심히 찾았던 내용중... (저뿐만이 아니라, 해외쪽도 급한지 실시간 커뮤니케이션이 되더군요) cocoaPods 생성된 framework의 source="$(readlink "${source}")" 부분을 source="$(readlink -f "${source}")" -f 옵션 을 넣으라고 하더군요. 참고 :  https://github.com/CocoaPods/CocoaPods/issues/11808 리눅스 명령어다 보니.. 솔직히 잘모르겠고, 뭘 추가했을때 감당이 안될까봐 내용 찾아보니 심볼릭 링크의 원본 위치를 찾아주는 옵션이더라구요. OK 참고 :  https://itwiki.kr/w/%EB%A6%AC%EB%88%85%EC%8A%A4_readlink 제 프로젝트에서 찾아서 -f 옵션 추가 아카이브도 안되었었는데, 앱스토어 등록까지 성공   마무리 오늘은 급하게 업데이트된 Xcode14.3 버전에 아카이브 대응에 대해서 체크해보았습니다. 기존에 iOS16.4가 먼저 업데이트 되서 Xcode14.3 RC로 사용하다가 안되서 앱스토어 다시받고