ios SDCycleScrollView 輪播圖為SDCycleScrollViewPageContolStyleClassic模式時(shí)分頁(yè)符顯示不全

原因分析:

原因是由于:UIPageControl在 ios 14之后有了變化導(dǎo)致按照框架中的計(jì)算寬度方法計(jì)算不準(zhǔn)確導(dǎo)致的店乐。解決方法需要在SDCycleScrollView.m文件中的layoutSubviews方法中在對(duì)UIPageControl進(jìn)行寬度計(jì)算的時(shí)候加入對(duì)ios 14及以上系統(tǒng)版本的適配代碼丹诀,大致位置為第513行代碼的地方著拭。

解決方法:

  • 需要適配的代碼如下:
        if (@available(iOS 14.0, *)) {

            if ([self.pageControl isKindOfClass:[UIPageControl class]]) {

                UIPageControl *pageControl = (UIPageControl *)_pageControl;

                size.width = [pageControl sizeForNumberOfPages:self.imagePathsGroup.count].width;

            }

        }
  • pod導(dǎo)入的話就直接更新到最新版本即可成黄。

  • 手動(dòng)拖入項(xiàng)目中解決方案:不好找的話就把下邊的layoutSubviews方法和SDCycleScrollView.m文件中的layoutSubviews方法進(jìn)行替換凡恍。

- (void)layoutSubviews

{

    self.delegate = self.delegate;
    [super layoutSubviews];
    _flowLayout.itemSize = self.frame.size;
    _mainView.frame = self.bounds;

    if (_mainView.contentOffset.x == 0 &&  _totalItemsCount) {

        int targetIndex = 0;

        if (self.infiniteLoop) {

            targetIndex = _totalItemsCount * 0.5;

        }else{

            targetIndex = 0;

        }

        [_mainView scrollToItemAtIndexPath:[NSIndexPath indexPathForItem:targetIndex inSection:0] atScrollPosition:UICollectionViewScrollPositionNone animated:NO];
    }
    CGSize size = CGSizeZero;

    if ([self.pageControl isKindOfClass:[TAPageControl class]]) {

        TAPageControl *pageControl = (TAPageControl *)_pageControl;

        if (!(self.pageDotImage && self.currentPageDotImage && CGSizeEqualToSize(kCycleScrollViewInitialPageControlDotSize, self.pageControlDotSize))) {

            pageControl.dotSize = self.pageControlDotSize;

        }

        size = [pageControl sizeForNumberOfPages:self.imagePathsGroup.count];

    } else {

        size = CGSizeMake(self.imagePathsGroup.count * self.pageControlDotSize.width * 1.5, self.pageControlDotSize.height);

        // ios14 需要按照系統(tǒng)規(guī)則適配pageControl size

        if (@available(iOS 14.0, *)) {

            if ([self.pageControl isKindOfClass:[UIPageControl class]]) {

                UIPageControl *pageControl = (UIPageControl *)_pageControl;

                size.width = [pageControl sizeForNumberOfPages:self.imagePathsGroup.count].width;

           }

        }
    }

    CGFloat x = (self.sd_width - size.width) * 0.5;
    if (self.pageControlAliment == SDCycleScrollViewPageContolAlimentRight) {
        x = self.mainView.sd_width - size.width - 10;
    }
    CGFloat y = self.mainView.sd_height - size.height - 10;
    if ([self.pageControl isKindOfClass:[TAPageControl class]]) {
        TAPageControl *pageControl = (TAPageControl *)_pageControl;
        [pageControl sizeToFit];
    }
    CGRect pageControlFrame = CGRectMake(x, y, size.width, size.height);
    pageControlFrame.origin.y -= self.pageControlBottomOffset;
    pageControlFrame.origin.x -= self.pageControlRightOffset;
    self.pageControl.frame = pageControlFrame;
    self.pageControl.hidden = !_showPageControl;
    if (self.backgroundImageView) {
        self.backgroundImageView.frame = self.bounds;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末盅抚,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子柬脸,更是在濱河造成了極大的恐慌他去,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,692評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件倒堕,死亡現(xiàn)場(chǎng)離奇詭異灾测,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)垦巴,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,482評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門媳搪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來铭段,“玉大人,你說我怎么就攤上這事秦爆⌒蛴蓿” “怎么了?”我有些...
    開封第一講書人閱讀 162,995評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵等限,是天一觀的道長(zhǎng)爸吮。 經(jīng)常有香客問我,道長(zhǎng)精刷,這世上最難降的妖魔是什么拗胜? 我笑而不...
    開封第一講書人閱讀 58,223評(píng)論 1 292
  • 正文 為了忘掉前任蔗候,我火速辦了婚禮怒允,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘锈遥。我一直安慰自己纫事,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,245評(píng)論 6 388
  • 文/花漫 我一把揭開白布所灸。 她就那樣靜靜地躺著丽惶,像睡著了一般。 火紅的嫁衣襯著肌膚如雪爬立。 梳的紋絲不亂的頭發(fā)上钾唬,一...
    開封第一講書人閱讀 51,208評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音侠驯,去河邊找鬼抡秆。 笑死,一個(gè)胖子當(dāng)著我的面吹牛吟策,可吹牛的內(nèi)容都是我干的儒士。 我是一名探鬼主播,決...
    沈念sama閱讀 40,091評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼檩坚,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼着撩!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起匾委,我...
    開封第一講書人閱讀 38,929評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤拖叙,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后赂乐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體薯鳍,經(jīng)...
    沈念sama閱讀 45,346評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,570評(píng)論 2 333
  • 正文 我和宋清朗相戀三年沪猴,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了辐啄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片采章。...
    茶點(diǎn)故事閱讀 39,739評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖壶辜,靈堂內(nèi)的尸體忽然破棺而出悯舟,到底是詐尸還是另有隱情,我是刑警寧澤砸民,帶...
    沈念sama閱讀 35,437評(píng)論 5 344
  • 正文 年R本政府宣布抵怎,位于F島的核電站,受9級(jí)特大地震影響岭参,放射性物質(zhì)發(fā)生泄漏反惕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,037評(píng)論 3 326
  • 文/蒙蒙 一演侯、第九天 我趴在偏房一處隱蔽的房頂上張望姿染。 院中可真熱鬧,春花似錦秒际、人聲如沸悬赏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,677評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)闽颇。三九已至,卻和暖如春寄锐,著一層夾襖步出監(jiān)牢的瞬間兵多,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,833評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工橄仆, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留剩膘,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,760評(píng)論 2 369
  • 正文 我出身青樓沿癞,卻偏偏與公主長(zhǎng)得像援雇,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子椎扬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,647評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容