YoonC

Swift - Routing on IOS 본문

Develop/Swift

Swift - Routing on IOS

윤태풍 2021. 9. 29. 11:01

Route to another screen

다음처럼 화면의 navigation controller을 누른 후 Editor -> embed in -> navigation controller 하면 스크린이 하나 더 생성되고

navigation view controller은 table view controller과 연결되게 된다.

아니면 controll + 드래그로 두개를 이어준 후 오른쪽 화면처럼 선택창에서 root view controller 선택도 가능하다.

 

Table view controller의 맨 상단부분을 더블클릭하면 제목처럼 글을 적어줄 수 있음.

 

라벨에서 글이 너무 길때 자리가 모자라다면 ...으로 말줄임이 나타나는데

이때 설정에서 Line에 원하는 줄 수 적어주면 그만큼 나오고 0은 내용만큼 줄 수가 나오게 한다.

 

다음처럼 위의 노랭 동그라미 클릭 + controll + 드래그 띄울화면 하면 위 처럼 Manual seque가 나오고 여기서 Show 를 선택하면

화살표가 생성된다. 이것을 클릭하면 오른쪽에서 이름 설정이 가능하다. 이 이름을 CountryTableViewController에서 사용

tavleView func (didSelect로 치면 나옴)에 performSeque 함수를 써서 위에서 가져온 이름을 넣어주면 작동한다.

Country List 쪽 눌러주면 뒤로갈때의 이름도 설정해 줄 수 있음

 

Data transfer between screens

각 국가리스트마다 다른 화면이 뜨게 해야하므로 해당하는 CountryDefinitionViewController 의 Cocoa Touch Class 파일생성.

이후 메인보드에서 Custom class에 위의 파일을 연결해준다.

이후 옆에 창 열어서  아래 화면처럼 수행, 단 다른 국기를 클릭할때마다 다르게 떠야하므로 이 부분은 CountryTableViewController

 

아래와 같이 코드를 추가한다. 

일단 tableView func에 sender을 바꿔주고 prepare for segue 함수를 정의해준다. 이때 country는 

오른쪽의 var country와 이름이 동일해야한다

왼쪽 : CountryTableViewContr oller // 오른쪽 : CountryDefinitionViewController

  +) 추가적으로 설명을 바꿔주는 코드는 깃에 올려두었음

SWIFT for in Loop

 ✏️ for 반복문 

  - 사용 :  for item in condition { 수행코드 }   ✨condition이 참일동안 수행코드 부분을 반복하면서 돌아감

for count in 10...30 {
  print(count);
}

// 1부터 30까지 출력

var arr = ['A', 'B', 'C', 'D'];
for alph in arr {
  print("alphabet: \(alph)")
}
// 문자열과 같이 출력하고 싶다면 \() 사용하고 
// 출력결과는 alphabet: A (D까지 출력될것)

'Develop > Swift' 카테고리의 다른 글

Swift - Important Swift Concepts  (0) 2021.09.29
Swift - Listing Data on IOS  (0) 2021.09.23
Swift - Reach Data from UI  (0) 2021.09.23
Swift - Create UI  (0) 2021.09.23
Comments