이번에 소개할 내용은 ..
-> 강의들을 보여주는 테이블 뷰에서 학년으로 구분해서 해당 학년 수업만 불러와지는 기능 / tableView 선택 시 해당 수업 정보 출력해주는 기능을 소개하겠다.
나는 데이터를 불러올 때 클래스에 배열 선언 후 내부 DB의 데이터를 배열에 append 해주는 방법을 사용했다.
먼저 UI를 살펴보자면 이러하다.
처음 화면엔 모든 강의 데이터들이 불러와지고, 학년 선택 시 ..
이렇게 해당 학년의 강의 데이터만 불러와지는 모습이다.
이렇게 필터링해주는 기능을 구현할 때 상당히 머리가 아팠다. 그 이유는..
중 필터링 기능이 동작하지 않았다.. 계속 저번에 포스팅했던 오류인 EXC_BAD_ACCESS가 출력되는 바람에 아예 방향을 바꾸느라 애먹었다. 그 전에 유저의 학년 선택값을 받아주기 위해 Dropdown을 사용해서 학년 필터링을 진행해주었다.
내 생각은 이렇다.
1. 먼저 모든 시간표 데이터를 불러온다.
2. 이후 유저가 학년을 고를 시 강의가 저장된 배열을 모두 삭제한 후 해당 학년에 해당하는 데이터만 배열에 다시 삽입해준다.
3. 유저가 다른학년을 고른다면 해당 동작을 반복한다.
위의 생각대로 기능을 구현해보았다.
1번은 저번 포스팅대로 구현하면 가능했고, 그 이후는!
학년을 골랐을 시 진행되는 코드. 먼저 배열 내용 모두 삭제 후 다시 해당학년 데이터를 불러온다.
그리고 셀 클릭 시 화면이 넘어가는 기능은 didSelectedRowAt에서 해당 동작을 입력해주면 된다. 나는 navigation controller로 화면을 전환하기 때문에 다음 화면으로 pushViewController 해주었다.
오늘 포스팅은 여기까지.. 다음 시간에는 시간표를 추가하는 기능 구현 후 포스팅 예정이다. 아마 이 기능만 해결된다면 75퍼센트는 완성일 것 같다.