Clone App (17) 썸네일형 리스트형 [Twitter Clone] Add ViewModel and bind view 🟨 구현 화면 🟨 구현 순서RegisterViewModel 파일 생성로그인에 필요한 프로퍼티, 메서드 생성AuthManager 파일 생성 계정을 생성하는 메서드 생성 RegisterViewController 텍스트필드에 입력하는 값을 RegisterViewModel로 전달하여 계정 생성 및 로그인 🟨 RegisterViewModel.swiftimport Foundationimport Firebaseimport FirebaseAuthCombineSwiftimport Combinefinal class RegisterViewViewModel: ObservableObject { @Published var email: String? @Published var password: St.. [Twitter Clone] Add Firebase to App (setup onboarding view controllers) 🟨 구현화면 🟨 구현 순서console.firebase.google.com 에 들어가서 새 프로젝트 추가HomeViewController.swift 내에 온보딩 뷰가 나오게 설정OnboardingViewController.swift 파일 생성 (회원가입)RegisterViewController.swift 파일 생성 (아이디, 비밀번호 입력) 🟨 Firebase 홈페이지에서 새 프로젝트 생성하기 자세한 내용은 타 블로그 참고할 것 https://console.firebase.google.com/u/0/ 로그인 - Google 계정이메일 또는 휴대전화accounts.google.com 🟨 HomeViewController.swift HomeView가 로드되자마자 온보딩 뷰가 나오게 설정overri.. [Twitter Clone] Add firebase - part1 🟨 구현 화면 🟨 구현 순서Firebase 홈페이지에 접속하여 denpendency 받을 것 OnboardingViewController 생성RegisterViewController 생성 🟨 Firebase 적용아래의 홈페이지에 들어가 firebase에 앱을 등록한다.https://console.firebase.google.com/u/0/project/twitterclone-e53b7/overview 로그인 - Google 계정이메일 또는 휴대전화accounts.google.com 🟨 HomeViewController.swift 코드 구현테스트 목적으로, onBoarding View가 나오게 한다. override func viewWillAppear(_ animated: Bool) {.. [Twitter Clone] Add Indicator button in profile view 🟨 구현 화면 🟨 구현 순서profile View 내의 카테고리 별 버튼이 눌렸을 때, 눌린 것과 안눌린 것의 굵기 정도 차이를 준다. 버튼 아래에 indicator 라는 지시선을 생성한다. 🟨 ProfileViewController.swift 코드 구현화면이 처음 로드될 때, 활성화된 버튼을 표시하기 위해 굵기 정도에 차이를 준다. override init(frame: CGRect) { super.init(frame: frame) ... configureStackButton() } private func configureStackButton() { for (i, button) in sectionStac.. [Twitter Clone] Continue implementing the profile view 🟨 구현 화면 🟨 구현 순서profile view의 상태표시줄 (시간, 배터리 표시하는 부분)에 대한 설정한다.table의 header를 safearea까지 늘리고, 스크롤에 따라 상태 표시줄을 지정해준다.profile의 각 카테고리 버튼을 열거형으로 설정한다. 🟨 ProfileViewController.swift 코드 구현viewDidLoad() 메서드 내에 코드 구현 navigationController?.navigationBar.isHidden = trueprofileTableView.contentInsetAdjustmentBehavior = .never 위의 코드를 구현하면 메인화면이 SafeArea까지 넘어 간다. 근데 이렇게 하면 HomeViewController → ProfileVi.. [Twitter Clone] Add logo, Design ProfileView 🟨 구현화면 🟨 구현 순서navigationItem 의 titleView에 logo 이미지 설정profile 관련된 Controller 및 profileView 생성 🟨 HomeViewController.swift 코드 구현 configureNavigationBar() 메서드로 네비게이션 부분 설정 로고를 네비게이션에 할당: 1. 로고 이미지뷰 생성 및 설정 → 2. 로고 이미지뷰를 담을 뷰 생성 → 3. 해당 뷰를 네비게이션에 설정import UIKitclass HomeViewController: UIViewController { // 네비게이션 부분에 logo 이미지 추가 private func configureNavigationBar() { let size: C.. [Twitter Clone] Add tweet actions 구현 화면 구현 순서트윗 액션에 따른 버튼 생성델리게이트 패턴을 사용하여 각 버튼의 액션 별 전달데이터 설정 TweetTableViewCell.swift 트윗 버튼 생성 델리게이트 패턴 사용 목적으로 프로토콜 선언데리게이트 패턴을 사용하기 위한 대리자 선언 각 버튼을 누르면 동작하는 델리게이트 함수 설정import UIKit// 데이터 전달 목적으로 델리게이트 패턴 사용 - 프로토콜 선언 - 1protocol TweetTableViewCellDelegate: AnyObject { func tweetTableViewCellDidTapReply() func tweetTableViewCellDidTapRetweet() func tweetTableViewCellDidTapLike() fu.. [Twitter Clone] Add a custom cell 구현 화면 구현 순서 TweetTableViewCell.swift 파일 생성 (timeLineTable에 들어가는 셀에 대한 설정 목적)HomeViewController 클래스 내 timeLineTable에 TweetTableViewCell 등록extension HomeViewController 에 cell 불러오기 TweetTableViewCell.swiftimport UIKitclass TweetTableViewCell: UITableViewCell { static let identifier = "TweetTableViewCell" private let avatarImageView: UIImageView = { let imageView = UIImageView.. 이전 1 2 3 다음 목록 더보기