2017-02-25 6 views
2

마지막 셀이 표시 될 때 UITableView 아래쪽에 ActivityIndicator를 추가하고 더 많은 데이터를 가져 오는 동안 데이터를 가져 오면 데이터를 가져와 숨길 수 있습니다.로딩하는 동안 UITableView 아래쪽에 ActivityIndicator 추가

그래서 마지막으로 표시되는 행 -> 스피너는 데이터를 가져 오는 동안 회전하기 시작합니다. -> 데이터를 가져오고, 스피너를 숨 깁니다. -> 새 데이터가 tableview에 추가되었습니다.

어떻게해야합니까?

감사)

답변

16

https://github.com/evnaz/ENFooterActivityIndicatorView이 기능

func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) { 
    let lastSectionIndex = tableView.numberOfSections - 1 
    let lastRowIndex = tableView.numberOfRows(inSection: lastSectionIndex) - 1 
    if indexPath.section == lastSectionIndex && indexPath.row == lastRowIndex { 
     // print("this is the last cell") 
     let spinner = UIActivityIndicatorView(activityIndicatorStyle: .gray) 
     spinner.startAnimating() 
     spinner.frame = CGRect(x: CGFloat(0), y: CGFloat(0), width: tableView.bounds.width, height: CGFloat(44)) 

     self.tableview.tableFooterView = spinner 
     self.tableview.tableFooterView?.isHidden = false 
    } 
} 

을 추가하고 tableFooterView 때 데이터로드를 숨겨야합니다.

+1

화면 크기가 다르기 때문에 픽스 크기 값을 사용하지 마십시오. – lukwuerz

+0

tableView_category 란 무엇입니까? – lukwuerz

+0

tableview_category는 행을 포함하는 기본 tableView입니다. 나는이 예제가 매력처럼 작동했습니다. –

2

한 가지 방법은 그것의 UIActivityIndicatorView와 사용자 정의 셀을 추가하는 것입니다. 그것을 별도의 섹션에 넣을 수 있습니다. 그것을 할 수있는 많은 방법이 있습니다.

또는 당신이 체크 아웃 :

+0

내가보기로하겠습니다. –

+1

난 단지 타사 라이브러리를 사용하고 싶지 않습니다. 주어진 예제는 Obj-C로 작성되었습니다. –

+1

사용하지 않아도됩니다. 필요한 정보를 확인하고 신속하게 작성할 수 있습니다. – lukwuerz