업데이트 backgroundView에 살해되지 않는 :애니메이션은 jQuery과
- 나는 웹 서비스에서 데이터를로드하는 jQuery과가있다.
- 데이터를로드하는 동안 UIAnyCustomView (UIView의 하위 클래스)에 backgroundView를 설정하고 있습니다. 프로그래밍 방식으로 그려서 애니메이션을 적용합니다.
- 웹 서비스에서 데이터를받은 후 선택적으로 UITableView의 backgroundView를 nil로 설정합니다. 여기서는 애니메이션이 자동으로 제거되어야한다고 생각하지만 그렇지 않습니다.
내 질문 : 이유가 무엇입니까? (설명 업데이트)
원래의 질문에
나는 내 애플 리케이션 중 하나에 대한 몇 가지 배터리 사용 피드백을 받았습니다. xCode 기기를 사용하여 배터리 사용량을 모니터링하고 문제를 발견했습니다. 영원히 애니메이션을 호출 한 정적으로 jQuery과/UICollectionView의 backgroundView를 설정했다 (의이 UICustomeActivityIndicator를 호출하자) : 콘텐츠가 내가 설정하여 backgroundView을 삭제 한로드 된 다음
fileprivate func rotateLoadingView() {
UIView.animate(withDuration: 0.5, delay: 0.0, options: [.curveLinear], animations: {
self.innerCircleView.transform = self.innerCircleView.transform.rotated(by: CGFloat(M_PI_2))
}) { result in
if !self.isHidden {
self.rotateLoadingView()
}
}
}
에 무기 호 :
// collectionView.backgroundView = nil
tableView.backgroundView = nil
backgroundView를 지우고 있었지만 애니메이션이 계속 진행 중이었고 거대한 배터리를 사용하고있었습니다 (백그라운드로 응용 프로그램을 보내는 중).
내 질문; 이 동작은 정상적인가 아니면 backgroundView UITableView/UICollectionView의 버그이며 nil로 설정되어있는 동안 자동으로 지워 져야합니까?
컨트롤러에서 'activityIndicator.hidden = true'를하고 계십니까? 왜'backgroundView'를 nil로 설정하면'activityView'에 영향을 미칠까요? – alexburtnik
예 activityIndicator.hidden = true로 설정합니다. backgroundView를 nil로 설정하면 왜 activityView에 영향을 미치지 않아야합니까?시스템에서 애니메이션을 자동으로 제거해야합니다. 맞습니까? – Rashid
@ downvote에 대한 근본적인 이유? – Jeyamahesan