Jihyeonnn
송지현
Jihyeonnn
전체 방문자
오늘
어제
  • Jihyeon Song (29)
    • C++ (0)
    • C (0)
    • Linux (0)
    • iOS (23)
    • JAVA (0)
    • Python (1)
    • GitHub (0)
    • 개인 프로젝트 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • iOS개발
  • 파이썬 #python #개발 #기초
  • 기초
  • 프로그래밍
  • 개발
  • 코딩
  • 스위프트
  • Mac사용법
  • IT
  • UI
  • swift
  • optionalchaining
  • array
  • iOS 개발
  • 개발자
  • ios
  • Mac
  • generic

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Jihyeonnn
iOS

Swift 8 - 앱 개발과 Xcode 기초

Swift 8 - 앱 개발과 Xcode 기초
iOS

Swift 8 - 앱 개발과 Xcode 기초

2024. 10. 30. 16:42

 

Bundle Identifier가 다른 앱과 겹치는 경우엔 AppStore에 등록할 수 없다.

Interface: Storyboard

Language: Swift 로 설정해 준다.

Source Control: Create Git repository on my Mac 항목을 체크하면, Git으로 더 쉽게 버전 관리를 할 수 있다.

Project를 클릭했을 때 나오는 화면이다.

General 탭의 Minimum Deployments 는 iOS의 최소 버전을 의미한다.

너무 낮게 설정하면 앞으로 나오는 신기술들을 사용할 수 없고, 너무 높게 설정하면 호환성이 떨어지니 적당히 설정하도록 하자.

이 포스팅에서는 15.0으로 설정하도록 하겠다.

 

Deployment Info - iPhone Orientation 의 옵션을 설명해 보겠다.

Portrait: 기본(세로 방향)

Upside Down: 화면 180도 회전, 보통 사용하지 않는다.

LandScape Left/Right: 화면 좌/우 90도 회전, 선택 사항이다.

프로젝트 생성 후 설정할 수 있는 옵션들이다.

자주 쓰는 것은 Navigators의 Project, Inspectors 탭이 있다.

 

Command Key + Shift + L 단축키를 사용하여 여러 오브젝트들을 추가할 수 있다.

Placeholder 는 클릭했을 때 그 값이 보이지 않게 된다.

모바일 환경 키보드로 시뮬레이션을 하고 싶을 때는, Command Key+R로 시뮬레이터를 켠 후 I/O에서 해당 옵션을 선택한다.

 

import UIKit // UIKit 프레임워크를 가져옵니다. 이 프레임워크는 iOS 앱의 UI를 구성하는 데 사용

class ViewController: UIViewController { // ViewController라는 클래스를 정의, UIViewController를 상속

    override func viewDidLoad() { // viewDidLoad 메서드를 재정의, 뷰가 메모리에 로드된 후 호출
        super.viewDidLoad() // 부모 클래스의 viewDidLoad 메서드를 호출하여 기본 설정을 수행
        // Do any additional setup after loading the view. // 뷰가 로드된 후 추가 설정을 수행할 수 있는 곳
    }

}

ViewController.swift 의 구성이다.

Ctrl + Command Key + Alt + Enter : 우측에 코드 창이 나온다.

 

label을 클릭 + Ctrl 후 Controller 소스 안으로 드래그 시 출력되는 창이다.

Outlet은 변수이며, Name은 변수 이름, Type은 UILabel이어야 한다.

 

변수명을 잘못 입력했을 때, 멋대로 바꾸면 위와 같은 에러가 발생하게 된다.

그럴 땐 viewController의 connections inspector에서 연결을 끊어내야 한다.

 

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var Hello: UILabel! 
    @IBOutlet weak var txtName: UITextField!
    //왜 IB인가: Interface builder의 약자이다. 
    //예전에는 XCode와 해당 프로그램이 별개로 있었는데, 통합되면서 사용되는 약자이다. 
    @IBAction func btnSend(_ sender: UIButton) {
        Hello.text=txtName.text
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        print("aaaaa")
    }


}

위는 outlet 생성 후 바뀐 코드이다.

 

텍스트 가운데에 커서를 두고 Alt를 누르면 커서가 ?로 바뀌게 된다.

그때 클릭하면 도움말을 볼 수 있다.

변수들의 값이 전부 Optional이다.

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var Hello: UILabel!
    @IBOutlet weak var txtName: UITextField!
    @IBAction func btnSend(_ sender: UIButton) {
        Hello.text = "Hello," + txtName.text //error: txtName.text의 값이 Optional임. 언래핑 시 해결
        print(Hello.text, txtName.text)
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        print("aaaaa")
    }
}

 

breakPoint를 걸었을 땐 오른쪽으로 쭉 드래그해서 드랍한다.

실수로 view 왼쪽의 화살표가 사라지면 View Controller의 Title 밑 체크박스가 해제되어 있지는 않은지 확인해 보자.

'iOS' 카테고리의 다른 글

Swift 10 - 주요 UI 기능 소개  (1) 2024.11.13
Swift 9 - 앱 개발하기  (1) 2024.11.06
Swift - 5 Method(함수) 2  (0) 2024.10.15
Swift - 4 Method(함수)  (1) 2024.10.08
Swift - 3 Optional  (0) 2024.09.25
    'iOS' 카테고리의 다른 글
    • Swift 10 - 주요 UI 기능 소개
    • Swift 9 - 앱 개발하기
    • Swift - 5 Method(함수) 2
    • Swift - 4 Method(함수)
    Jihyeonnn
    Jihyeonnn

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.