2011-05-10 47 views
3

//初始化頁面控制以編程方式創建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被調用很多次。

+1

接受這樣我會回答並確保您將頁面控件添加到了正確的視圖,並且不會落後於任何其他視圖 – visakh7 2011-05-10 06:31:18

+0

您是否添加其他視圖?首先註釋掉所有的代碼,然後添加pageControl。如果它還沒有出現,其他控件是否顯示? – Joe 2011-05-10 07:29:18

回答

2
[self.view addSubview:pageControl]; 

這行代碼添加之前多了一個..

[self.view bringSubviewToFront:pageControl]; 

願這一個幫助你..

+0

我試過所有的選擇,但仍然沒有得到。 – sumit 2011-05-10 07:22:39

+0

任何人都可以幫忙嗎? – sumit 2011-05-10 07:25:21

+0

夥計,再增加一行 - [pageControl addTarget:self action:@selector()forControlEvents:UIControlEventValueChanged] .. – 2011-05-10 10:07:39

5

LMAO與這一個,因爲我剛剛有同樣的問題:) 如果您仍然有這個問題或任何其他人會努力嘗試設置背景顏色就像

pageControl.backgroundColor = [UIColor redColor]; 

有趣的是,頁面控件的默認顏色設置使它很難注意到,即清晰的白色視圖:)

+1

哦,非白色背景確實揭示了頁面控件!我幾乎撓頭禿!謝謝 – 2011-12-30 22:08:37

1

我有編程視圖構建視圖的問題,並發現最好的方法是構建它們一次方法Init,而不是ViewDidLoad方法。

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); 

當然,你還需要將其與相應的滾動視圖/瀏覽量鏈接相應