成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

iPhone開發中UIPageControl實現自定義按鈕教程

移動開發 iOS
iPhone開發中UIPageControl實現自定義按鈕是本文要介紹的內容,主要講解的是來實現自定義按鈕,有時候UIPageControl需要用到白色的背景,那么會導致上面的點按鈕看不見或不清楚,

iPhone開發UIPageControl實現自定義按鈕是本文要介紹的內容,主要講解的是來實現自定義按鈕,有時候UIPageControl需要用到白色的背景,那么會導致上面的點按鈕看不見或不清楚,我們可以通過繼承該類重寫函數來更換點按鈕的圖片現實。

實現思路如下.

新建類繼承UIPageControl :

  1.  @interface MyPageControl : UIPageControl   
  2. {   
  3.     UIImage *imagePageStateNormal;   
  4.     UIImage *imagePageStateHighlighted;   
  5. }   
  6. - (id)initWithFrame:(CGRect)frame;   
  7. @property (nonatomic, retain) UIImage *imagePageStateNormal;   
  8. @property (nonatomic, retain) UIImage *imagePageStateHighlighted;   
  9. @end  

聲明了初始化該類的函數

用了兩個UIImage保存兩張圖片, 大家知道的, UIPageCotrol的按鈕分為兩態, 一個是正常, 一個是高亮

接下來實現該類以及重寫父類方法:

  1.  @interface MyPageControl(private)  // 聲明一個私有方法, 該方法不允許對象直接使用   
  2.  
  3. - (void)updateDots;   
  4. @end   
  5. @implementation MyPageControl  // 實現部分   
  6. @synthesize imagePageStateNormal;   
  7. @synthesize imagePageStateHighlighted;   
  8. - (id)initWithFrame:(CGRect)frame { // 初始化   
  9.     self = [super initWithFrame:frame];   
  10.     return self;   
  11. }   
  12. - (void)setImagePageStateNormal:(UIImage *)image {  // 設置正常狀態點按鈕的圖片   
  13.     [imagePageStateHighlighted release];   
  14.     imagePageStateHighlighted = [image retain];   
  15.     [self updateDots];   
  16. }   
  17. - (void)setImagePageStateHighlighted:(UIImage *)image { // 設置高亮狀態點按鈕圖片   
  18.     [imagePageStateNormal release];   
  19.     imagePageStateNormal = [image retain];   
  20.     [self updateDots];   
  21. }   
  22. - (void)endTrackingWithTouch:(UITouch *)touch withEvent:(UIEvent *)event { // 點擊事件   
  23.     [super endTrackingWithTouch:touch withEvent:event];   
  24.     [self updateDots];   
  25. }   
  26. - (void)updateDots { // 更新顯示所有的點按鈕   
  27.     if (imagePageStateNormal || imagePageStateHighlighted)   
  28.     {   
  29.         NSArray *subview = self.subviews;  // 獲取所有子視圖   
  30.         for (NSInteger i = 0; i < [subview count]; i++)   
  31.         {   
  32.             UIImageView *dot = [subview objectAtIndex:i];  // 以下不解釋, 看了基本明白   
  33.             dot.image = self.currentPage == i ? imagePageStateNormal : imagePageStateHighlighted;   
  34.         }   
  35.     }   
  36. }   
  37. - (void)dealloc { // 釋放內存   
  38.     [imagePageStateNormal release], imagePageStateNormal = nil;   
  39.     [imagePageStateHighlighted release], imagePageStateHighlighted = nil;   
  40.     [super dealloc];   
  41. }   
  42. @end  

OK, 在添加處加入以下來實例化該對象代碼:

  1. MyPageControl *pageControl = [[MyPageControl alloc] initWithFrame:CGRectMake(0,0, 200, 30)];   
  2. pageControl.backgroundColor = [UIColor clearColor];   
  3. pageControl.numberOfPages = 5;   
  4. pageControl.currentPage = 0;   
  5. [pageControl setImagePageStateNormal:[UIImage imageNamed:@"pageControlStateNormal.png"]];   
  6. [pageControl setImagePageStateHighlighted:[UIImage imageNamed:@"pageControlStateHighlighted.png"]];   
  7. [self.view addSubview:pageControl];   
  8. [pageControl release];  

小結:UIPageControl實現自定義按鈕教程的內容介紹完了,希望通過本文的學習對你能有所幫助!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-08-11 11:51:07

iPhone鍵盤

2011-08-18 17:32:55

iPhone開發Table Cell

2011-08-18 09:52:13

iPhone SDKUIPageContr

2011-08-18 09:44:33

iPhone SDK儀表控件UIDialView

2009-06-08 20:13:36

Eclipse自定義控

2024-09-11 14:46:48

C#旋轉按鈕

2021-11-23 15:06:42

Kubernetes 運維開源

2010-04-29 17:14:47

組策略自定義安裝

2013-12-26 17:08:36

Android開發Android應用自定義Adapter顯

2009-09-07 22:00:15

LINQ自定義

2012-05-18 10:52:20

TitaniumAndroid模塊自定義View模塊

2011-12-26 10:11:08

JSP

2009-06-24 15:13:36

自定義JSF組件

2022-10-25 15:12:24

自定義組件鴻蒙

2012-05-25 12:57:31

Windows Pho

2011-06-15 09:24:36

Qt Widget Model

2022-05-18 07:44:13

自定義菜單前端

2013-12-27 14:10:36

Android開發Android應用Transform

2011-08-02 11:17:13

iOS開發 View

2024-12-27 15:37:23

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久精品视频播放 | 亚洲一区二区久久久 | 成人夜晚看av | 在线中文视频 | 伊人在线 | 韩国av一区二区 | 精品久久久久国产 | 激情欧美一区二区三区中文字幕 | 国产精品1区2区 | 日本啊v在线 | 日韩精品一区二区三区 | 国产一级片91 | 亚洲不卡在线观看 | 人人射人人草 | a欧美| 精品亚洲一区二区三区 | 国产精品毛片一区二区在线看 | 99在线免费观看 | 国产精品美女久久久久久免费 | av在线一区二区三区 | 久久国内| 日本一区二区影视 | 国产1区 | 99国产精品99久久久久久 | 国产成人综合一区二区三区 | 欧美a√| 成人久久久| 一区二区三区免费在线观看 | 久久国产精品99久久久久久丝袜 | 成人在线视频网址 | 亚洲国产精品第一区二区 | 久久久91精品国产一区二区三区 | 日本精品久久久久 | 久久色视频| 超碰人人插 | www国产成人免费观看视频,深夜成人网 | 久久久精品 | 成人在线视频网址 | 亚洲国产精品一区二区久久 | 免费三级网 | 国产精品九九视频 |