ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Swift 로 iOS 앱 만들기- 02 : 기본 셋팅
    Swift 2019. 6. 26. 11:57

    Window를 만드는 법


    01. 디버그로 window 확인해보기

    전 강의까지의 상태에서 런을 한 후 디버깅을 해보면 다음과 같이 빈 화면이 나온다.

     

    디버깅은 상단 패널 중 아래 부분을 나타내는 아이콘을 클릭한 후

    Debug View Hierarchy 아이콘을 클릭하면 된다.

     

     

    그러면 다음과 같이 빈 화면이 나오는 것을 볼 수 있는데,

    이것은 우리가 메인 스토리보드를 날리고, 아직 윈도우를 만들어 주지 않았기 때문이다.

     

     

    02. window 만들기

    그럼, 이제 window를 만들어서 저 화면을 채워보자.
    window를 만들어주기 위해 AppDelegate.swift 파일로 돌아간다. 그리고 다음과 같이 입력한다.

    들어가기에 앞서, Swift 문법에 대해서 살짝 보자면,

    • 객체를 만들 때는 ()

    • class는 무조건 앞 글자가 대문자, 변수는 소문자. 단 단어별 연결일 땐 단어 앞 글자는 대문자로 쓴다.

    • 스트링을 타입으로 가지는 변수 x의 값은 3이다. 라고 할때, 다음과 같이 쓴다.

    r x : String = "3" //var 변수이름 : 타입 = 값
    • var window: UIWindow? 에서 "?"nil일 수도있고, 아닐 수도 있다 를 뜻한다. 
      (nil은 값의 부재라고 생각하면 된다.)
      즉, 변수의 값이 있을 수 도 있고 없을 수도 있을 때 쓰는 것이 '?' 이고, 이것을 Optional 이라 부르는데, 그 안에는 '?' 말고도 '!'가 있다. (Optional에 대해서는 추후 더 공부를 한 후에 정리를 할 예정이다.)

     

    자 그러면 var window: UIWindow?를 해석해보면,

    변수 window는 UIWindow가 오는데, 그 값은 nil 일 수도 있고, 아닐 수도 있다를 뜻한다.

    따라서, 아래 func 밑에 변수 window의 값을 설정해 준다.

     

     

     

    각 코드들은 주석으로 설명을 달아 놓았는데, 그중 마지막에 코드에 대해서 설명하자면

    window?.rootViewController = ViewController()

     

    앱을 보면 평면으로 보이지만 사실 겹겹이 쌓여있는 구조이다.

    이미지 출처 : https://github.com/amraboelela/myos/wiki/CALayer

     

    amraboelela/myos

    Contribute to amraboelela/myos development by creating an account on GitHub.

    github.com

    이렇게 window 위에 view들이 쌓이게 되는데,

    그때 window랑 가장 근접하게 있는 view가 rootViewController이며,
    나는 현재 ViewController하나밖에 없기 때문에그것을 값으로 입력해준 것이다.

     

     

     

    코드 입력 후 런을 돌린 다음에 디버그를 다시 해보면 이제는 다음과 같이 두개의 층이 쌓여있는 모습이 보인다.

     

     

    드디어 window 와 그 위의 ViewController 가 보인다!

    아직 ViewController에는 아무것도 하지 않았기에 투명하게 나온다. 두 개의 층을 보니 신기하다.

     

     

    03. ViewController에서 배경색 설정하기

    이제 디버그에서 창이 두 개가 쌓여있는 것을 확인했다.

    이제는 아직도 어두운 화면을, 애가 원하는 색의 화면으로 바꿔보자.

    ViewController.swift에 가서 다음과 같이 입력한다.

     

    self는 ViewController 자신을 말한다.

    ViewController는 아까 디버그 했을 때보이는 파란색 선, 즉 틀이라면
    그 안에 보이는 색 부분(우리가 보는 영역)을 view라고 한다.

    따라서 ViewController(self)에서 view(실제 색이 들어가는 영역)의 backgroundColor = UIColor.red 로 설정한 것이다.

     

     

    디버그를 해보면 다음과 같이 나온다.

    파란색 틀(ViewController) 안에 빨간색 영역(view)이 생겼다!

    빨간색은 너무 눈이 아프니 내가 원하는 연한 파랑색 즉 커스텀 컬러로 바꿔보자.

     

     

    rgb 컬러로 바꾸는 방법은 다음과 같다.

     

    짠, 내가 원하는 컬러로 색이 바뀌는 것을 볼 수 있다.

     

     

    Tip

    iOS는 RGB 보다 HEX가 컬러가 더 잘나온다고 한다.

    더 잘 인식을 한다고 볼 수 있다.

    이 부분에 대해서는 추후 공부를 한 후에 정리할 예정이다.

     

     

     

     

     -

    * 본 글은 글쓴이가 스터디를 하고 배운 내용을 정리하는 식으로 쓰여지기 때문에 완전 초보자의 글입니다. 
    틀린 부분이 있을 수도 있고 글의 흐름이 일정하지 않을 수 있습니다.*

    -

     

     

    댓글

Designed by Tistory.