以编程方式创建UIPageControl的问题?

时间:2011-05-10 06:16:57

标签: iphone uipagecontrol

//初始页面控制

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 个答案:

答案 0 :(得分:5)

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

一样
pageControl.backgroundColor = [UIColor redColor];
有趣的是,页面控件的默认颜色设置使得很难注意到清晰的白色视图:)

答案 1 :(得分:2)

[self.view addSubview:pageControl];

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

[self.view bringSubviewToFront:pageControl];

愿这个人帮助你..

答案 2 :(得分:1)

我遇到了以编程方式构建视图的问题,并发现最好的方法是在Init方法中构建一次,而不是在ViewDidLoad方法中构建它们。

答案 3 :(得分: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相关联