728x90 반응형 SWIFT30 Xcode: 카메라, 갤러리 접근 권한 및 WkWebView 파일 업로드 action sheet 한글화 개발 환경 --------------------------------- OS : Mac 개발 툴 : xcode 개발 언어 : Swift xcode version : 15.0.1 min iOS version : 14.1.1 --------------------------------- 이번 포스팅에서는 iOS에서 카메라, 갤러리 접근 권한 설정 및 WkWebView 에서 파일 업로드 시 action sheet가 기본으로 영문으로 되어 있는데 이를 현지 언어로 변경할거다. 1. 카메라, 갤러리 접근 권한 설정 카메라, 갤러리 접근 권한 설정은 info.plist에서 설정한다. 이렇게 설정해두면 앱에서 사용자가 카메라, 갤러리에 접근하려 할 때 권한요청 팝업이 표시된다. info.plist source code.. 2023. 12. 5. [Xcode] some files could not be transferred .... 에러 해결기 개발 환경 --------------------------------- OS : Mac 개발 툴 : xcode 개발 언어 : Swift xcode version : 14.3 min iOS version : 13.0 --------------------------------- 오늘 만난 에러 ㅡㅡ Showing All Messages rsync error: some files could not be transferred (code 23) at /AppleInternal/Library/BuildRoots/aaefcfd1-5c95-11ed-8734-2e32217d8374/Library/Caches/com.apple.xbs/Sources/rsync/rsync/main.c(996) [sender=2.6.9] rs.. 2023. 5. 3. [Swift] WkWebview Custom UserAgent 설정하기 개발 환경 --------------------------------- OS : Mac 개발 툴 : xcode 개발 언어 : Swift xcode version : 14.2 min iOS version : 13.0 --------------------------------- webView = WKWebView(frame: self.view.frame) // 서버에 모바일임을 명시 let userAgent = WKWebView().value(forKey: "userAgent") webView.customUserAgent = userAgent as! String + "APP_Running" webView.uiDelegate = self webView.navigationDelegate = self print(.. 2023. 3. 26. [Swift] KaKao Link Share, 카카오톡 링크 공유하기 개발 환경 --------------------------------- OS : Mac 개발 툴 : xcode 개발 언어 : Swift xcode version : 14.2 min iOS version : 13.0 --------------------------------- 안녕하세요 전진시 입니다 이번 포스팅 주제는 iOS에서 카카오톡 링크 공유를 해볼겠습니다. 일단 카카오 개발자 사이트에 프로젝트 생성하여 앱 package name 및 hash 값 등록했다는 전제하에 내용 작성하겠습니다. Native Key까지 가져온 상태로요 :D 제가 구현한 Kakao Link 공유는 webView에서 카카오톡 링크 버튼을 클릭하면 javaScript 통신으로 앱 함수를 호출하여 필요한 값들을 앱에 전달하여 작업하.. 2023. 2. 27. [iOS] UILabel에 padding 주기 개발 환경 --------------------------------- OS : Mac 개발 툴 : xcode 개발 언어 : Swift xcode version : 14.2 min iOS version : 13.0 --------------------------------- 안녕하세요 이번 포스팅에서는 UILabel에 padding을 줘볼건데요 android 개발을 하다보면 xml 파일에서 padding이나 margin을 주는게 너무나 너무나 ~ 간편하게 되어있는데 iOS 1년차 개발자의 눈으로는 xcode에서 margin이나 padding 주기가 좀 까다로운것 같아요 좀 많이? ㅠ 까다로운 것 같습니다. 다시 본론으로 돌아와서 UILabel에 Padding을 줘볼건데요 먼저 @IBDesignable a.. 2023. 2. 22. SWIFT : 특정 뷰 화면 전환하기 - 세로모드 예제(orientation : portrait) 이번 포스팅은 특정 뷰 컨트롤러에서 세로모드 고정을 알아보겠습니다. 전체 뷰를 한가지 방향으로 고정하는 방법도 있지만 특정 뷰만 세로모드로 고정되어 로드되어야 할 때가 있습니다. ✌️ 세로모드로 고정 로드되어야 할 뷰 컨트롤러 안에 아래의 소스를 넣어주세요 override var supportedInterfaceOrientations: UIInterfaceOrientationMask { return .landscapeLeft } override var shouldAutorotate: Bool { return true } supportedInterfaceOrientations 해당 메서드는 지원되는 인터페이스의 방향을 반환합니다 shouldAutorotate 콘텐츠가 자동회전해야 하는지 여부를 묻는 Boo.. 2023. 2. 20. [Swift] javascript Alert & Confirm 띄우기 저번 포스팅에서 android에서 자바스크립트 alert 함수와 confirm 함수에 반응하는 방법을 포스팅했었습니다 오늘은 이어서 iOS에서도 똑같이 위 함수에 반응하도록 해보겠습니다 ! class MainWebView : UIViewController, WKNavigationDelegate, WKScriptMessageHandler, WKUIDelegate{ @IBOutlet var webView: WKWebView! 먼저 WebView class에 WKScriptMessageHandler 프로토콜을 채택합시다 WKScriptMessageHandler 는 웹페이지에서 실행되는 javascript code에서 메세지를 수신하기 위한 인터페이스입니다 func webView(_ webView: WKWebV.. 2023. 2. 20. iOS & Android : 프로젝트에 폰트 추가 및 설정 안녕하세요 전진시입니다~~ 오늘은 Android 프로젝트와 iOS 프로젝트에 폰트 추가 및 설정 하는 방법을 포스팅 하겠습니다 Android Resource Directory를 하나 만들어주세요 폴더명은 font로 지어주세요 font.xml파일은 좀 이따 만들거니까 넘어가시고 아래 사진처럼 폰트 파일을 넣어야합니다! ** 안드로이드에서는 resource 파일에 대문자가 못들어갑니당 Resource File을 생성해주세요 ! 저는 파일명을 알아보기 쉽게 로 하였습니다 --> 파일을 만드시고 아래 소스를 넣어주세요 여기에 폰트 파일명을 넣어줍시다 android:font="@font/noto_medium" 여기까지 하면 준비는 끝났고 xml에서 추가한 폰트를 호출해보겠습니다! fontFamily로 호출하면 끝.. 2023. 2. 20. [SWIFT] Custom Alert 사용하기 안녕하세요 이번 포스팅에서는 iOS 프로젝트에서 Custom Alert 를 구현하겠습니다 준비물 - Xcode, 손가락 UIAlertController 클래스를 사용할건데 iOS dev 문서에는 "이 클래스를 사용하여 표시할 메시지와 선택할 작업으로 경고 및 작업 시트를 구성합니다. 원하는 동작과 스타일로 알림 컨트롤러를 구성한 후 메소드를 사용하여 제시합니다. UIKit은 앱의 콘텐츠 위에 모달 방식으로 경고 및 작업 시트를 표시합니다." 라고 정의하네요 먼저 UIAlertController 클래스를 사용하기 위해 UIKit를 alert를 띄울 파일 안에 import 해줍니다 import UIKit 아래 코드는 확인 버튼 하나 있는 alert 입니다. let alertController = UIAler.. 2023. 2. 19. [Swift]JavaScript < ㅡ > Native 통신 JavaScript -> Native 함수 호출하기 지난 포스팅에서는 Kotlin에서 javaScript 통신 하는 방법을 알아보았습니다. 이번 포스팅에서는 Swfit에서 javaScript 통신 하는 방법을 알아보겠습니다. 기본적인 webView 셋팅은 생략하고 js통신에 필요한 셋팅만 짚고 넘어가겠습니다. ViewDidLoad() 에 javaScript native 간 통신을 위해 셋팅을 해주겠습니다. override func viewDidLoad() { super.viewDidLoad() webView.configuration.userContentController.add(self, name: "a") webView.configuration.userContentController.add(self, .. 2023. 2. 17. [SWIFT] WebView 생성하기 안녕하세요 이번 포스팅에서는 Xcode 프로젝트에서 swift로 webView를 하나 만들어볼까 합니다 WKWebView WKWebView는 iOS dev 문서에 따르면 "인앱 브라우저와 같은 대화형 웹 콘텐츠를 표시하는 개체입니다." 라고 합니다. 웹 콘텐츠를 앱 UI에서 보여주기 위한 도구로 보면 되겠네요 그러면 webView를 생성해보겠습니다 먼저 Xcode에서 프로젝트 생성하고 storyBoard에 webView 하나 넣어줍시다. webView를 사용하기 위해 WebKit 프레임워크를 사용할거에요. "WebKit는 웹 컨텐츠를 앱 컨텐츠에 통합시키는 역할을 합니다" webView를 띄울 파일에 WebKit를 import 해줍니다. import WebKit StoryBoard에 있는 webView .. 2023. 2. 17. swift : masksToBounds 란? masksToBounds는 자식 뷰가 부모 뷰에 맞게 레이어가 잘릴지 말지 결정하는 bool값이다 예를들어 popupContainer.layer.cornerRadius = 10 부모뷰에 위와같이 radius를 주면 자식 UiLabel의 레이어가 바깥으로 나간다 이럴 때 아래처럼 masksToBounds 값을 true로 주면 popupContainer.layer.cornerRadius = 10 popupContainer.layer.masksToBounds = true 자식 UILabel의 레이어가 부모뷰 레이어에 맞게 잘려나간걸 확인할 수 있다 ! 2022. 10. 4. 이전 1 2 3 다음 728x90 반응형