【发布时间】:2014-01-08 21:57:10
【问题描述】:
我正在使用UIPageControl 并试图使背景透明。
UIPageControl *pageControl = [UIPageControl appearance];
pageControl.pageIndicatorTintColor = [UIColor lightGrayColor];
pageControl.currentPageIndicatorTintColor = [UIColor blackColor];
pageControl.backgroundColor = [UIColor blackColor];
有什么建议吗?
试过
pageControl.backgroundColor = [UIColor clearColor];
运气不好。
============
好的,正如 @powerj1984 和 @daniellarsson 提到的,UIPageControl 在位置和背景颜色方面似乎不可更改。
所以我决定把它移到 UIViewController 并创建一个 UIPageControl 和
@property (weak, nonatomic) IBOutlet UIPageControl *pageControl;
然后把它放到我的UIPageViewController 顶部,就像viewDidLoad 一样
self.pageControl.numberOfPages = self.pageTitles.count;
[self.view addSubview:_pageControl.viewForBaselineLayout];
然后我更新了UIPageControl在viewControllerBeforeViewController和viewControllerAfterViewController中的索引
NSUInteger index = ((HomePageContentViewController*) viewController).pageIndex;
self.pageControl.currentPage = index;
【问题讨论】:
-
除非在 iOS 7 中更新,否则我不认为背景颜色是 UIPageControl 外观的选项,请参阅此答案:stackoverflow.com/questions/9881088/uipagecontrol-uiappearance
-
现在是什么颜色的?我不认为你可以通过外观来编辑背景颜色,我会假设它默认是透明的?
-
默认情况下它是白色的,我通过presentationCountForPageViewController 和presentationIndexForPageViewController 添加了它。当我通过 Storyboard 添加为页面控件时,它是透明的。
-
你能看到这些点吗?
-
@sselvan 我遇到了完全相同的问题,您能否详细说明如何克服此问题,您可以针对此事回答您自己的问题
标签: ios objective-c uipagecontrol