【发布时间】:2015-10-01 16:25:02
【问题描述】:
我已经将UIRefreshControl 子类化为我自己的,我可以管理除一件事之外的所有事情:
默认微调器始终可见,当然它位于我在自定义实现中所做的所有事情的中间。
我找不到微调器属性或任何我需要设置为清晰颜色的东西,谁能帮我解决这个问题?
【问题讨论】:
标签: spinner uiactivityindicatorview uirefreshcontrol
我已经将UIRefreshControl 子类化为我自己的,我可以管理除一件事之外的所有事情:
默认微调器始终可见,当然它位于我在自定义实现中所做的所有事情的中间。
我找不到微调器属性或任何我需要设置为清晰颜色的东西,谁能帮我解决这个问题?
【问题讨论】:
标签: spinner uiactivityindicatorview uirefreshcontrol
要在UIRefreshControl 中隐藏微调器加载器,请将.tintColor 属性设置为透明颜色。
例如(斯威夫特):
mRefreshControl.tintColor =.clear
【讨论】:
斯威夫特 4、斯威夫特 5
错误修复
有时只有这段代码不能正常工作:
refreshControl.tintColor = .clear - 第一次重新加载显示指标:(
这修复了这个错误:
refreshControl.tintColor = .clear
refreshControl.subviews.first?.alpha = 0
【讨论】:
覆盖 didMoveToSuperview 以隐藏微调器的超级视图。
override func didMoveToSuperview() {
super.didMoveToSuperview()
guard let _ = superview else { return }
self.subviews.first?.alpha = 0 // set hidden = true did not work
}
- (void)didMoveToSuperview {
[super didMoveToSuperview];
if (self.superview != nil && self.subviews.count > 0) {
self.subviews[0].alpha = 0;
}
}
您可能想要进行更多检查,而不仅仅是使用第一个子视图。
【讨论】: