iOS编程错误集锦(二)

本人有若干成套学习视频, 可试看! 可试看! 可试看, 重要的事情说三遍 包含Java, 数据结构与算法, iOS, 安卓, python, flutter等等, 如有需要, 联系微信tsaievan.

  • didMoveToSuperViewdidMoveToWindow的调用顺序

didMoveToSuperView -> viewWillAppear -> didMoveToWindow -> viewDidAppear

  • SDCycleScrollViewpageControl大小修改

SDCycleScrollView并没有放出修改pageControlAPI, 而且, 用的也是系统的UIPageControl, 这里有一个简单的方法修改pageControl的大小:

@interface TGCZDCycleScrollView : SDCycleScrollView

@end

@implementation TGCZDCycleScrollView

- (void)layoutSubviews {
    [super layoutSubviews];
    UIPageControl *pageControl = [self valueForKey:@"pageControl"];
    UIImage *image = [UIImage imageNamed:@"banner.png"];
    CGFloat screenWidth = UIScreen.mainScreen.bounds.size.width;
    CGFloat cycleViewY = image.size.height * screenWidth / image.size.width - 5 - 3;
    if (TG_DEVICE_IPHONEX_HIGHER) {
        cycleViewY = cycleViewY + 30;
    }
    CGFloat cycleViewX = (TG_SCREEN_WIDTH - 5) * 0.5;
    pageControl.frame = CGRectMake(cycleViewX, cycleViewY, 5, 5);
    ///< 改变pageControl中点的大小
    pageControl.transform = CGAffineTransformScale(CGAffineTransformIdentity, 0.65, 0.65);
    pageControl.currentPageIndicatorTintColor = [UIColor whiteColor];
    pageControl.pageIndicatorTintColor = [UIColor blueColor];
}

@end

步骤:

  • 首先KVC拿到pageControl对象
  • 修改pageControltransform即可

PS. 本人有若干成套学习视频, 包含Java, 数据结构与算法, iOS, 安卓, python, flutter等等, 如有需要, 联系微信tsaievan.

你可能感兴趣的:(iOS编程错误集锦(二))