UITableView의 UX 개선 (지금 당장!)

3590 단어 XcodeSwiftiOS

입문

deselectRowAtIndexPath(indexPath: NSIndexPath, animated: Bool)자세한 내용을 확인한 후
호출 장소만 바꾸면 UX를 대폭 개선할 수 있습니다.

거치다


응용 프로그램에 따라 단원을 눌렀을 때 화면이 이동됨에도 불구하고
누르면 바로 deselectRowAtIndexPath 동작이 표시됩니다.
이것은 나쁜 일이 아니지만, 네가 화면에서 과도해서 돌아올 때
셀의 선택 해제 상태가 어떤 셀을 눌렀는지
사용자에게 시각적으로 전달할 수 있기 때문에 UX가 좋다고 생각합니다.

예제


셀 누르면 즉시 해제



이 방법이라면 사용자는 어느 단원을 눌렀는지 기억해야 한다.

변환에서 복귀 시 해제



시각적으로 어느 단원을 눌렀는지 똑똑히 알 수 있다.

로컬 설정 응용 프로그램



참고로 로컬 설정 프로그램도 이전 후 칸의 선택 상태를 해제했습니다.

구현 방법


BadDeselect.swift
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    tableView.deselectRowAtIndexPath(indexPath, animated: true)

    // 画面遷移など
}
didSelectRowAtIndexPath 내부 처리
GoodDeselect.swift
override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)

    if let indexPathForSelectedRow = tableView.indexPathForSelectedRow {
        tableView.deselectRowAtIndexPath(indexPathForSelectedRow, animated: true)
    }
}
viewWillAppear를 실현하다.
참고로 상태를 선택한 칸은 UITableView#indexPathForSelectedRow 에서 얻을 수 있습니다.

끝날 때


가늘게 보이지만 "신은 디테일에 깃든다."
지금 바로 개선될 수 있으니 꼭 한번 해 보세요.
궁금한 점이 있으면 댓글란에 들어가세요.
나는 견본 코드를 Github에 놓았다.
마음대로 사용하세요.
https://github.com/AcaiBowl/CellUX-Sample

좋은 웹페이지 즐겨찾기