基于 iOS 页面的模板,关于点的 UIPageViewController 和 UIPageControl 颜色

Posted

技术标签:

【中文标题】基于 iOS 页面的模板,关于点的 UIPageViewController 和 UIPageControl 颜色【英文标题】:iOS Page based template, regarding UIPageViewController and UIPageControl color of the dots 【发布时间】:2014-02-02 15:37:31 【问题描述】:

在 xcode 上创建基于页面的模板并将 UIPageViewController 转换样式更改为 Scroll 后尝试更改点的 UIPageControl 颜色时遇到问题。

这些点没有出现在视图中,我不知道为什么。

我刚刚改变了:

self.pageViewController = [[UIPageViewController alloc] initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal options:nil];

并且,在 AppDelegate.m (didFinishLaunchingWithOptions) 上:

UIPageControl *pageControl = [UIPageControl appearance];
pageControl.pageIndicatorTintColor = [UIColor lightGrayColor];
pageControl.currentPageIndicatorTintColor = [UIColor blackColor];
pageControl.backgroundColor = [UIColor whiteColor];

有什么帮助吗?

谢谢。

【问题讨论】:

【参考方案1】:

在我看来,您的方向是正确的。使用外观代理应该可以工作。我这样做并且它有效(在您的 AppDelegate 中执行,并在界面出现之前执行它):

UIPageControl* proxy = 
    [UIPageControl appearanceWhenContainedIn:[UIPageViewController class], nil];
[proxy setPageIndicatorTintColor:[UIColor lightGrayColor];
[proxy setCurrentPageIndicatorTintColor:[UIColor blackColor]];
[proxy setBackgroundColor:[UIColor whiteColor]];

您还必须实现两个委托方法:

- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pvc 
    // ...


-(NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pvc 
    // ...

否则,UIPageControl 将不会出现!

除此之外,我看不出你正在做的事情和我正在做的事情之间有什么区别,但我知道我的代码确实有效。您可以在这里下载并试用:

https://github.com/mattneub/Programming-ios-Book-Examples/blob/master/bk2ch06p311pageController/ch19p626pageController/AppDelegate.m

【讨论】:

谢谢!现在它起作用了! (是presentationCountForPageViewController和presentationIndexForPageViewController的实现) 是的,当我注意到我的外观代码和你的一样之后,我想可能是委托方法。 :) 顺便说一句,你不得不承认他们在白色 UIPageControl 上的默认白色非常愚蠢。 哈哈哈,同意!再次感谢!

以上是关于基于 iOS 页面的模板,关于点的 UIPageViewController 和 UIPageControl 颜色的主要内容,如果未能解决你的问题,请参考以下文章

分享一套基于拼图响应式前端框架开发的企业站HTML模板

[模板] 虚树

基于页面的应用程序和基于视图的应用程序之间的区别

Django中基于登录的个人资料页面设计

关于项目中埋点的总结和思路

基于子页面的 Magnolia 菜单项