일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
- IOS
- 서버개발
- Node.js
- mac
- 아이폰
- 앱
- 백엔드
- SwiftUI
- post
- UI
- Xcode
- 개발자
- 백준
- db
- 회원가입
- 개발
- 통신
- API
- Alamofire
- database
- spring
- swagger
- Java
- 알고리즘
- JavaScript
- spring boot
- 앱개발
- Swift
- node
- java spring
- Today
- Total
목록Swift (45)
YagSill
안녕하세요 YagSill 입니다. 오늘은 버튼이 아닌 "UILabel에 터치 액션"을 달아보겠습니다! override func viewDidLoad() { super.viewDidLoad() testLabel.addTapGesture(target: Any?, selector : Selector?) } 위 코드가 기본 코드인 것 같습니다. 그리고 저는 "testLabel"을 터치하게 되면 "메롱메롱"이 찍히는 것을 확인할 것 입니다. @objc func tapAction(_ sender: UIGestureRecognizer) { guard let view = sender.view else { return } switch view { case testLabel : print("메롱메롱") default : ..
안녕하세요 YagSill 입니다. 오늘은 Fatal error : Unexpectedly found nil while unwrapping an Optional value 위 에러에 대해서 대응을 한번 해보겠습니다. 일단 위 에러가 발생되는 이유는 View가 로드될 때 nil을 발견했다는 뜻입니다. 정확히 말하자면 clasee FirstViewController : UIViewController { override func viewDidLoad() { super.viewDidLoad() dataMove() } func dataMove() { let sb = UIStoryboard(name : "스토리보드이름", bundle : nil) let vc = let vc = sb.instantiateViewCon..
안녕하세요 YagSill 입니다. 오늘은 간단하게 유저의 데이터를 저장해서 앱을 종료한 후에도 종료직전 저장된 상태를 호출하는 방법에 대해서 포스팅 하겠습니다. 예를들면 자동로그인 기능이라던지 선택된언어 저장 기능이 있겠네요 기본적인 형태는 이렇습니다. // 데이터를 저장하는 방식 UserDefaults.standard.set("save", forKey: "testKey") // 데이터를 불러오는 방식 UserDefaults.standard.object(forKey: "testKey") 이런식으로 저장하고, 불러올 수 있습니다. 한가지 예를 들어서 코드를 응용해 보도록 합시다! @IBAction func testButton(_ sender : UIButton) { // 예를들어서 버튼을 누르면 데이터가 ..

안녕하세요 YagSill 입니다. 오늘은 다양한 언어를 적용하는 방법에 대해서 포스팅 해보겠습니다. 1. Project -> Localizations 적용하기 여기서 + 버튼으로 Localizations를 추가해 줍니다. 2. 왼쪽 프로젝트 파일 확인 추가한 언어별로 Localizable 파일이 생성이 됩니다. 해당 파일에 값들을 넣어주어야 합니다. Ex) Example_Title = "안녕하세요"; 이 형식은 Key = "value"; 형식으로 지정이 되고 추가한 Localizable 파일내에 해당 Key 값은 동일하게 입력해 주어야 합니다. 영어) Example_Title = "Hello"; 일본어) Example_Title = "こんにちは"; 이런식으로 해당 언어 Localizable 파일에 적용을..
안녕하세요 YagSill 입니다. 오늘은 WKScriptMessageHandler를 활용하여 JavaScript와 통신을 해보겠습니다. - Javascript -> Swift 함수 호출 window.webkit.messageHandlers.브릿지 함수 명.postMessage(message); - ViewController ViewDidLoad에 함수 두개 호출 override func viewDidLoad() { super.viewDidLoad() scriptWebViewCall() loadURL() } func scriptWebViewCall() { let contentController = WKUserContentController() let config = WKWebViewConfiguration..
안녕하세요 YagSill 입니다. 오늘은 WKWebView를 활용해서 새창을 여는 방법을 소개해 드리겠습니다. - WKWebView 새창 열기 createWebViewWith 메소드를 활용하여 새창을 열어보겠습니다. var popupView : WKWebView? func webView(_ webView: WKWebView, createWebViewWith configuration: WKWebViewConfiguration, for navigationAction: WKNavigationAction, windowFeatures: WKWindowFeatures) -> WKWebView? { popupView = WKWebView(frame: webview.frame, configuration: configu..
안녕하세요 Yagsill 입니다. 오늘은 ViewController간에 데이터를 전달하는 방법에 대해서 알아보도록 하겠습니다. 첫번째는 너무 쉬운 present방법입니다. let sb = UIStoryboard(name : "스토리보드이름", bundle : nil) let vc = let vc = sb.instantiateViewController(withIdentifier: "스토리보드의 identity") as! 뷰컨트롤러 이름 ex) firstViewController 이렇게 하면 해당 ViewController의 Class를 가지고 올 수 있습니다! // let sb = UIStoryboard(name : "스토리보드이름", bundle : nil) let vc ..
안녕하세요 YagSill 입니다. 오늘은 전 포스트와 이어서 Alamofire get 방식과 post방식의 차이를 알아보도록 하겠습니다. Alamofire.request("url 넣어주고", method : .get? 혹은 .post?) 그냥 method 부분에서 .get이냐 .post냐 넣어주면 됩니다. 서버에서 "아 이 API를 호출할때는 post로 호출하셔야 해요." 라고 하면 ---> .post 서버에서 "아 이 API를 호출할때 그냥 get으로 호출하시면 되여" 라고 하면 ---> .get 하지만 우리는 알고 있어야 합니다. post와 get의 차이를요!!!!!! get 방식은 파라미터가 url에 고대~~~~~~~로 노출이 되기 때문에 로그인? 회원가입? 같은 부분에서는 활용하기 어렵겠죠? 너무..