前期尝试遇到的问题
1. @property (weak, nonatomic, readonly) UIActivityIndicatorView *loadingView; 被weak修饰, removeFromSuperview 会重新初始化
2. startAnimating 的时候, 即使view已经hidden, 那这个view也是显示的.
// - 先用强引用指向 loadingView, 然后 [loadingView removeFromSuperview]; 时候loadingView没有释放, 而且没有父视图, 此时 startAnimating 也不会显示
@interface QIEAutoNormalFooter : MJRefreshAutoNormalFooter @end
@implementation QIEAutoNormalFooter{
UIActivityIndicatorView *_strongLoadingView;
}
- (void)prepare {
[super prepare];
self.stateLabel.font = [UIFont boldSystemFontOfSize:12];
self.stateLabel.textColor = MJRefreshColor(153, 153, 153);
[self setTitle:@"正在加载..." forState:MJRefreshStateRefreshing];
[self setTitle:@"" forState:MJRefreshStateIdle];
_strongLoadingView = self.loadingView;
[self.loadingView removeFromSuperview];
}