更改页面控制的背景颜色
有没有办法改变tvOS页面控制的背景颜色?
注意 :我想将背景色设置为清晰的颜色
我尝试了下面的代码,但它不能在tvOS中工作。
var pageControl : UIPageControl! pageControl = UIPageControl(frame: CGRectMake(0, self.view.frame.height - 200, self.view.frame.width, 50)) pageControl.pageIndicatorTintColor = UIColor(red: 255/255, green: 255/255, blue: 255/255, alpha: 0.70) pageControl.currentPageIndicatorTintColor = UIColor.whiteColor() pageControl.backgroundColor = UIColor.clearColor() pageControl.opaque = false pageControl.numberOfPages = 10 pageControl.currentPage = 0
提前致谢。
这个透明背景是UIVisualEffectViewtypes的UIPageControl中的一个子视图。 你可以像这样删除它:
for subview in pageControl.subviews { if subview.isKindOfClass(UIVisualEffectView) { subview.removeFromSuperview() } }
以上@亚历山大 – 约翰曼有一个解决scheme(虽然我想find另一种方式)。
理想情况下,能够设置实际的背景颜色会更好。 这个解决scheme并不是真的这样做; 它移除了UIPageControl的元素来获得提供清晰背景的“效果”,而没有实际执行。
以下是相同代码的一个客观的c版本:
for (UIView *subview in pageControl.subviews) { if ([subview isKindOfClass:[UIVisualEffectView class]] == YES) { [subview removeFromSuperview]; } }