Skip to content

Latest commit

ย 

History

History
42 lines (39 loc) ยท 2 KB

present(inter_view_control).md

File metadata and controls

42 lines (39 loc) ยท 2 KB

tags : #ios #ui #uikit #ํ™”๋ฉด์ด๋™ #view #์ฝ”๋“œ

Contents

  1. ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด (๋„˜์–ด๊ฐˆ ํ™”๋ฉด์˜ ์ฝ”๋“œ ํŒŒ์ผ์ด ์กด์žฌํ•ด์•ผ ๊ฐ€๋Šฅ)
let firstVC = FirstViewController()
firstVC.modalPresentationStyle = .fullScreen
firstVC.someString = "๋‚ด๋ถ€ ๋ณ€์ˆ˜๋กœ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๊ฐ€๋Šฅ"
firstVC.mailLabel.text = "์—ฐ๊ฒฐํ™”๋ฉด์ด ์Šคํ† ๋ฆฌ๋ณด๋“œ๋กœ ๋งŒ๋“ค์–ด์กŒ์œผ๋ฉด ์ด ์ค„์˜ ๋ฐฉ์‹์€ ๋ถˆ๊ฐ€๋Šฅ"
present(firstVC, animated: true, completion: nil)
  • ์ฝ”๋“œ๋กœ ๋งŒ๋“ค์—ˆ์„ ๋•Œ๋งŒ ์œ„์ฒ˜๋Ÿผ ์ธ์Šคํ„ด์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
    • view์œ„์˜ ๋ชจ๋“  UI๋“ค์ด ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ
    • (storyboard๋กœ ๋งŒ๋“  ํ™”๋ฉด์˜ UI๋Š” ํž™ ์˜์—ญ์— ์˜ฌ๋ผ๊ฐ„๋‹ค.)
  • modalPresentationStyle ์€ ์–ด๋–ค ์Šคํƒ€์ผ๋กœ ํ™”๋ฉด์„ ๋„์šธ ์ง€ ์ •ํ•œ๋‹ค.
  • firstVC.someString ๋ณ€์ˆ˜๋ฅผ ์˜ต์…”๋„๋กœ ๋งŒ๋“ค์–ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.
  • ๋Œ์•„๊ฐˆ๋•Œ๋Š” dismiss ์‚ฌ์šฉ
@objc func backButtonTapped() {
	dismiss(animated: true completion: nil)
}

  1. ์Šคํ† ๋ฆฌ๋ณด๋“œ๋กœ ๋งŒ๋“  ํ™”๋ฉด์œผ๋กœ ๋„˜์–ด๊ฐˆ ๋•Œ
if let secondVC = storyboard?.instantiateViewController(withIdentifier: "secondVC") as? SecondViewController {
	secondVC.someString = "๋‚ด๋ถ€ ๋ณ€์ˆ˜๋กœ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๊ฐ€๋Šฅ"
	// seconeVC.mailLabel.text = "์—ฐ๊ฒฐํ™”๋ฉด์ด ์Šคํ† ๋ฆฌ๋ณด๋“œ๋กœ ๋งŒ๋“ค์–ด์กŒ์œผ๋ฉด ์ด ์ค„์˜ ๋ฐฉ์‹์€ ๋ถˆ๊ฐ€๋Šฅ"
	present(secondVC, animated: true completion: nil)
}
  • guard let์„ ์จ๋„ ๋˜๊ณ , if let ๋Œ€์‹  let๊ณผ as!๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ง„ํ–‰ํ•ด๋„ ๋œ๋‹ค. (์Šคํ† ๋ฆฌ๋ณด๋“œ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ๊ฐ€ ๊ฑฐ์˜ ์—†์œผ๋ฏ€๋กœ...)
  • UIViewController์— ์ €์žฅ๋œ storyboard๋ผ๋Š” ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
  • withIdentifier์— ๋“ค์–ด๊ฐ€๋Š” string์€ ์—ฐ๊ฒฐํ•  ์Šคํ† ๋ฆฌ๋ณด๋“œ์˜ id์™€ ์ผ์น˜ํ•ด์•ผ ํ•œ๋‹ค.(๋ณ„๋„ ์„ค์ • ํ•„์š”)
    • ์—ฌ๊ธฐ์„œ๋Š” "secondVC"
  • ๋ฐ›์•„์˜จ ์Šคํ† ๋ฆฌ๋ณด๋“œ๋ฅผ SecondViewController ํƒ€์ž…์œผ๋กœ ์บ์ŠคํŒ…ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.

[[note_list_ios]] [[segue]]