1.4 UI基礎(chǔ)-分頁

分頁

  • 只要將UIScrollView的pageEnabled屬性設(shè)置為YES,UIScrollView會(huì)被分割成多個(gè)獨(dú)立頁面,里面的內(nèi)容就能進(jìn)行分頁展示

  • 一共多少頁

    self.pageControl.numberOfPages = count;
  • 當(dāng)前顯示的頁碼
    self.pageControl.currentPage = page;
  • 只有一頁時(shí),是否需要隱藏頁碼指示器
    self.pageControl.hidesForSinglePage = YES;
  • 其他頁碼指示器的顏色
    @property(nonatomic,retain) UIColor *pageIndicatorTintColor;
  • 當(dāng)前頁碼指示器的顏色
@property(nonatomic,retain) UIColor *currentPageIndicatorTintColor;

定時(shí)器 NSTimer

  • 在指定的時(shí)間執(zhí)行指定的任務(wù)
  • 每隔一段時(shí)間執(zhí)行指定的任務(wù)
  • 調(diào)用下面的方法就會(huì)開啟一個(gè)定時(shí)任務(wù)
+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL)yesOrNo;

每隔ti秒,調(diào)用一次aTarget的aSelector方法,yesOrNo決定了是否重復(fù)執(zhí)行這個(gè)任務(wù)

  • 通過invalidate方法可以停止定時(shí)器的工作,一旦定時(shí)器被停止了,就不能再次執(zhí)行任務(wù)。只能再創(chuàng)建一個(gè)新的定時(shí)器才能執(zhí)行新的任務(wù)
- (void)invalidate;
  • 解決定時(shí)器在主線程不工作的問題
NSTimer *timer = [NSTimer timerWithTimeInterval:2 target:self selector:@selector(next) userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];

封裝控件知識(shí)點(diǎn)

0530-1.png
  • initWithFrame

    • 當(dāng)控件通過代碼創(chuàng)建時(shí),就會(huì)調(diào)用這個(gè)方法
    • 當(dāng)控件通過代碼創(chuàng)建時(shí),想做一些初始化操作。應(yīng)該在這個(gè)方法中執(zhí)行
        - (instancetype)initWithFrame:(CGRect)frame
        {
            if(self = [super initWithFrame:frame]){
    
                // 添加子控件代碼
                [self setup];
            }
    
            return self;
        }
    
  • awakeFromNib

    • 當(dāng)控件從xib\storyboard中創(chuàng)建完畢時(shí),就會(huì)調(diào)用這個(gè)方法
    • 當(dāng)控件從xib\storyboard中創(chuàng)建完畢后的初始化操作。應(yīng)該在這個(gè)方法中執(zhí)行
        - (void)awakeFromNib
        {
            // 添加子控件代碼
            [self setup];
        }
    
  • initWithCoder

    • 當(dāng)控件是通過xib\storyboard創(chuàng)建時(shí),會(huì)調(diào)用這個(gè)方法來初始化控件
        - (instancetype)initWithCoder:(NSCoder *)aDecoder
        {
            if(self = [super initWithCoder:aDecoder]){
            // 添加子控件代碼
            }
    
            return self;
        }
    
  • layoutSubviews

    • 當(dāng)控件的尺寸發(fā)生改變的時(shí)候,會(huì)自動(dòng)調(diào)用這個(gè)方法
        - (void)layoutSubviews
        {
            [super layoutSubviews];
            // 更改frame代碼
        }
    

分頁知識(shí)點(diǎn)

  • 一句話移除全部控件
    // 移除之前的所有imageView
    // 讓subViews數(shù)組中的所有對(duì)象都執(zhí)行removeFromSuperiview
    [self.scrollView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容