3

// 初始化页面控件

UIPageControl *pageControl = [[UIPageControl alloc] init]; 
pageControl.frame = CGRectMake(110,5,100,100); 
pageControl.numberOfPages = 2; 
pageControl.currentPage = 0; 
[self.view addSubview:pageControl];

我正在尝试以UIPageControl编程方式创建。我创建了新的基于视图的应用程序。其中,我在 ViewControllers 中编写了这段代码viewDidLoad,但它没有创建页面控件。当我在控制台中看到 viewdidload 被多次调用时。

4

4 回答 4

5

LMAO 与这个原因我只是遇到了同样的问题 :) 如果你仍然遇到这个问题,或者其他任何人都会为此而苦恼,尝试设置背景颜色就像

pageControl.backgroundColor = [UIColor redColor];

有趣的是页面控件的默认颜色设置使得在清晰的白色视图上很难注意到:)

于 2011-05-16T10:35:52.340 回答
2
[self.view addSubview:pageControl];

在此代码行之前再添加一个..

[self.view bringSubviewToFront:pageControl];

愿这个能帮到你。。

于 2011-05-10T06:35:55.430 回答
1

I've had issues with building views programmatically, and found that the best way is to build them once in the Init method, not in the ViewDidLoad method.

于 2011-11-10T13:31:08.713 回答
1

如果您在白色背景上添加 pageControl,它将不可见。添加临时边框只是为了确保它在那里

    pageControl.layer.borderWidth = 0.5;

如果存在,请调整色调

    pageControl.pageIndicatorTintColor = UIColor.grayColor();
    pageControl.currentPageIndicatorTintColor = UIColor.blackColor();

如果它不存在,你可能做错了什么,它应该是这样的:

    var pageControl = UIPageControl(frame: CGRectMake(135, 230, 50, 20))
    pageControl.numberOfPages = 2;
    pageControl.currentPage = 0;
    pageControl.pageIndicatorTintColor = UIColor.grayColor();
    pageControl.currentPageIndicatorTintColor = UIColor.greenColor();
    self.view.addSubview(pageControl);

当然,您还需要将其与相应的 scrollView / pageView 链接起来

于 2014-09-15T15:39:22.083 回答