iOS: ํ ์ด๋ธ๋ทฐ ์ ํฐ์น ํ, ๋ค๋ฅธ ๋ทฐ๋ก ์ด๋ํ ๋ค์ ๋ค์ ๋์์์ ๋ ํฌ์ปค์ค ์์ ๊ธฐ
์ ์ ์ ํํด์ ๋ ๋ฒ์งธ ๋ทฐ๋ก ์ด๋ํ๋ค๊ฐ ๋ค์ ์ฒซ ๋ฒ์งธ ๋ทฐ๋ก ๋์์๋ ์ ์ ํฌ์ปค์ค๊ฐ ๋จ์์๋ค. ์ฒ์์๋ ์๋์ ๊ธ์ ์ฐธ๊ณ ํ์ฌ ์ธํฐํ์ด์ค ๋น๋์ Selection ์ต์ ์ None์ผ๋ก ๋ฐ๊พธ์ด์คฌ์๋๋ฐ, ์ด๋ฌ๋ฉด ์ด๋ ํ์ ๋์์๋ ํฌ์ปค์ค๊ฐ ๋จ์์์ง ์์ง๋ง, ๋ฌธ์ ๋ ํฐ์นํ ๋๋ ์์์ด ๋ณํ์ง ์๋๋ค๋ ๊ฑฐ๋ค. ์ด๊ฑด UX ์ธก๋ฉด์์ ์ ํฉํ์ง ๋ชปํ๋ค๊ณ ํ๋จํด์, ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์ฐพ์๋ดค๋ค.
์ ํ ๊ฐ๋ฐ์ ๊ณต์ ๋ฌธ์์์ ํด๊ฒฐ์ฑ ์ ์ฐพ์๋ค.
If you respond to the cell selection by pushing a new view controller onto the navigation stack, deselect the cell when the view controller pops off the stack. If you’re using a UITableViewController to display a table view, you get the behavior by setting the clearsSelectionOnViewWillAppear property to true. Otherwise, you can clear the selection in your view controller’s viewWillAppear(_:) method:
์
์ ์ ํํด์ ์ ๋ทฐ ์ปจํธ๋กค๋ฌ๋ฅผ ๋ค๋น๊ฒ์ด์
์คํ์ push ํ๊ณ ๋์ ๋ค์ pop ํ ๋(= ์๋ ๋ทฐ๋ก ๋์์ฌ ๋) select ๋์ด ์๋ ์
์ ์ทจ์ํด์ผ ํ๋ค. ์ทจ์ํ๋ ๊ฑด viewWillAppear()
์์ ์ฒ๋ฆฌํ๋ฉด ๋๋ค๊ณ ํ๋ค. ๊ฐ๋ค๊ฐ ๋ค์ ๋์์ค๋ ๊ฑฐ๋๊น ๋ฉ๋ชจ๋ฆฌ์ ์ด๋ฏธ ๋ทฐ๊ฐ ์ฌ๋ผ์์์ด์ viewDidLoad()
์์ ์ฒ๋ฆฌํ๋ ๊ฑด ์ ํฉํ์ง ์๋ค. ํ๋ฉด์ ๊ทธ๋ฆฌ๊ธฐ ์ง์ ์ ์ฒ๋ฆฌํ๋ ๊ฒ ์ ํฉํ๋ค.
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
if let selectedIndexPath = tableView.indexPathForSelectedRow {
tableView.deselectRow(at: selectedIndexPath, animated: animated)
}
}
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
-
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ
-
์นด์นด์คํก
์นด์นด์คํก
-
๋ผ์ธ
๋ผ์ธ
-
ํธ์ํฐ
ํธ์ํฐ
-
Facebook
Facebook
-
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ
-
๋ฐด๋
๋ฐด๋
-
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
-
Pocket
Pocket
-
Evernote
Evernote