보통의 네비게이션 컨트롤러를 이용한 스택구조의 뷰 컨트롤러를 가질 때 , 두 번을 연달아 POP 하고 싶을 때 사용한다. func backTwoWhenNavigationControllerUsed(){ let viewControllers : [UIViewController] = self.navigationController!.viewControllers as [UIViewController] self.navigationController?.popToViewController(viewControllers[viewControllers.count - 3 ], animated: false) }
UITableView 가 있으면 , 위로 잡아땡겨서 Cell들에 내용을 추가시켜주고 싶은경우 , 우선 위로 잡아땡겨서 TableView의 마지막 Cell이 나올 때를 캐치해야한다. 이때, 2가지방법이 있는데 난 tableView delegate함수를 사용하였다. 1. scrollview delegate 함수 func scrollViewDidEndDragging(_ scrollView: UIScrollView, willDecelerate decelerate: Bool) { // 마지막 셀일때 다시 통신 해서 값 받아와야한다. let height = scrollView.frame.size.height let contentYoffset = scrollView.contentOffset.y let distance..
우선 사용하고자 하는 뷰의 뷰컨트롤러에 lazy var refreshControl: UIRefreshControl = { let refreshControl = UIRefreshControl() refreshControl.addTarget(self, action: #selector(handleRefresh(_:)), for: UIControlEvents.valueChanged) refreshControl.tintColor = UIColor.red return refreshControl }() 구문을 선언해 준다. ( 빙글빙글 돌아가는 indicator 추가 ) 그리고 뷰에 추가시켜 준다. scrollSuperView.addSubview(self.refreshControl) 나의 경우에는 스크롤 뷰를 내리면..
아이폰에서 공유하기 버튼을 눌렀을 때의 화면을 구현 할 때 사용하는 방법이다. 구현은 생각 보다 간단하다. 원하는 동작을 하는 함수 안에 코드 몇줄만 추가하면된다. (스토리보드 건들일 필요 X) text 안에 치는 말이 문자든 선택한 어플리케이션에 복사되어 나타난다. (이미지나 다른 것들도 삽입 가능 ) func showActivityController(){ let text = "치고싶은말을 치세요~" let activityVC = UIActivityViewController(activityItems:[text], applicationActivities: nil) activityVC.popoverPresentationController?.sourceView = self.view present(activi..
UIView 나 UIButton 등에 곡선을 그려줘야 할 경우가 있다. 그럴 경우에는 UIVIewController 내부에 직접 func imageShape(_ button : UIButton) { let path1 = UIBezierPath(roundedRect: button.bounds, byRoundingCorners: [.topLeft, .bottomLeft] , cornerRadii: CGSize(width: 10, height: 10)) let maskLayer1 = CAShapeLayer() maskLayer1.frame = button.bounds maskLayer1.path = path1.cgPath button.layer.mask = maskLayer1 } 이런 식으로 선언해주고 fun..
Status Bar 배경 색을 바꾸기 위해서는 extension UIApplication { var statusBarView: UIView? { if responds(to: Selector("statusBar")) { return value(forKey: "statusBar") as? UIView } return nil } }위의 코드를 아무 뷰 컨트롤러에 맨 밑에 선언해주고 ViewController swift 파일 안에 viewDidLoad() 함수 안에 UIApplication.shared.statusBarView?.backgroundColor = .white 한 줄을 추가해주면 된다. 나는 흰색이 좋아서 흰색을 했당
- Total
- Today
- Yesterday