목록랭귀지/SWIFT (69)
아미(아름다운미소)
iOS 플랫폼의 제품을 개발할 때 대부분의 개발자들은 Open 라이브러리를 사용합니다. 그런데 본인의 프로젝트에 적용하기 위해서는 라이브러리 파일을 자신의 폴더에 하드 복사를 해주든지, 소프트 복사를 해주어야 할 것입니다. 하지만 라이브러리가 업데이트가 되거나 하게되면 다시 다운로드를 받고 다시 복사를 해야하는 불편함이 있습니다. CocoaPods란 자바 프로그래밍의 '메이븐' 과 같은 A Dependancy management tool 입니다. 한국어로 직역하면 '의존도 관리 도구' 라고 할 수 있는데, CocoaPods를 통해 라이브러리를 다운로드 받고 관리를 할 수 있으니 개발 과정에 있어 용이함을 보여줍니다. 간단한 사용방법을 알아 보겠습니다. # 설치 기본적으로 자신의 장비에 루비가 설치가 되어..
보통 사용자가 텍스트필드 등에 무엇을 입력하다가 키보드를 화면에서 사라지게 하고 싶을때, Return 키를 누르거나 화면을 터치하게 됩니다. 이럴 경우 기본적으로 UITextFieldDelegate 프로토콜의 메서드인 touchesBegan이랑 textFieldShouldReturn를 사용합니다. touchesBegan은 사용자가 화면 아무 곳이나 누르면 키보드가 사라지도록 하게 하는 것이고, textFieldShouldReturn은 키보드의 엔터키를 누르면 키보드가 사라지게 하도록 하는 것입니다. 이들을 적용하려면 먼저 Controller Class가 UITextFieldDelegate 프로토콜을 따른다고 선언한 다음 textField의 delegate도 self로 지정해야합니다. import UIKi..
Playing mp3 song on python - Navigation Bar import os os.system('start path/to/player/executable path/to/file.mp3')
Changing navigation bar color in Swift - Navigation Bar navigationController?.navigationBar.barTintColor = UIColor.green - Navigation Bar Text navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.orange] - Tab Bar tabBarController?.tabBar.barTintColor = UIColor.brown - Tab Bar Text tabBarController?.tabBar.tintColor = UIColor.yellow
How to manage SWRevealViewController with button let revealViewController = self.revealViewController() var settingsButton = UIButton(type: .custom) settingsButton.setImage(UIImage(named: "settings_icon")!, for: .normal) settingsButton.addTarget(revealViewController, action: #selector(SWRevealViewController.revealToggle(_:)), for: .touchUpInside) View.addGestureRecognizer(self.revealViewControll..
How to open a TabBarController in ViewControllers that Instantiate from SlideMenuViewController class MenuViewController: UITableViewController { override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { let tabIndex = indexPath.row let tabbarVC = (revealViewController().frontViewController as! UITabBarController) tabbarVC.selectedIndex = tabIndex revealViewControl..
Present and dismiss modal view controller (모달 뷰 컨트롤러 표시 및 닫기) Swift 4 스토리 보드에 각각에 버튼이있는 두 개의 View Controller(ViewController.swift, SecondViewController.swift)를 만듭니다. 두 번째보기 컨트롤러의 경우 클래스 이름을 SecondViewController로, 스토리 보드 ID는 secondVC로 설정합니다. ViewController.swift import UIKit class ViewController: UIViewController { @IBAction func presentButtonTapped(_ sender: UIButton) { let storyboard = UIStoryb..
Swift - How to hide back button in navigation item override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) self.navigationItem.hidesBackButton = true }
iOS 앱을 개발하다 보면 간혹 화면 진입 시 이벤트 화면 등의 다른 뷰 컨트롤러로 이동해야 하는 경우가 있습니다. 이럴 경우 뷰 컨트롤러 라이브 사이클 중 viewDidLoad에서 하는 것이 일반적인데, 이 경우 바로 이동되지 않습니다. 이후 viewWillAppear, viewDidAppear, layoutSubViews를 거쳐야 하기 때문입니다. 이럴 경우 DispatchQueue를 이용해 이동하면 됩니다. //Swift override func viewDidLoad() { super.viewDidLoad() DispatchQueue.main.async { // 다른 뷰 컨트롤러로 이동. } } //Objective-C – (void)viewDidLoad { [super viewDidLoad]; d..
Swift 네비게이션 컨트롤러를 이용한 화면 전환 - 네비게이션 컨트롤러는 뷰 컨트롤러의 특별한 종류로 계층적인 성격을 띠는 콘텐츠 구조를 관리하기 위한 컨트롤러 입니다.(내비게이션 바가 내장되어 있습니다.)- 이 컨트롤러가 제어하는 모든 뷰 컨트롤러에 내비게이션 바를 생성하는 특징이 있습니다.- 루트뷰 컨트롤러는 내비게이션 컨트롤러에 직접 연결된 컨트롤러이므로 화면 UI상단에 내비게이션 바가 표시됩니다.- 내비게이션 컨트롤러는 화면에 현재 표시되고 있는 뷰 컨트롤러들을 내비게이션 스택을 이용하여 관리합니다.- 내비게이션 컨트롤러 최상위 뷰컨트롤러는(마지막컨트롤러), 최하위 컨트롤러는(루트뷰 컨트롤러) 최상위 뷰 컨트롤러에 추가할 때는 pushViewController(animated:) -> 새로운화면..