国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Swift 讓ScrollView滾動到具體某個(gè)位置

這篇具有很好參考價(jià)值的文章主要介紹了Swift 讓ScrollView滾動到具體某個(gè)位置。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1.?使用scrollToItem方法滾動集合視圖

DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
    let firstIndexPath = IndexPath(item: 0, section: 0)
    let lastIndexPath = IndexPath(item: self.recordArray.count - 1, section: 0)
    
    // Scroll to first item
    self.collectionView.scrollToItem(at: firstIndexPath, at: .left, animated: false)
    
    // Delay for a short time (e.g., 0.1 seconds)
    DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
        // Scroll to last item
        self.collectionView.scrollToItem(at: lastIndexPath, at: .left, animated: false)
    }
}

上述代碼中,首先使用scrollToItem方法將集合視圖滾動到第一條數(shù)據(jù)(左側(cè)對齊),然后在稍后的延遲時(shí)間后,再次使用scrollToItem方法將其滾動到最后一條數(shù)據(jù)(左側(cè)對齊)。

2. 使用setContentOffset方法來滾動集合視圖

DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
    let firstIndexPath = IndexPath(item: 0, section: 0)
    let lastIndexPath = IndexPath(item: self.recordArray.count - 1, section: 0)

    if let firstCellAttributes = self.collectionView.layoutAttributesForItem(at: firstIndexPath),
       let lastCellAttributes = self.collectionView.layoutAttributesForItem(at: lastIndexPath) {
        let contentOffset = CGPoint(x: lastCellAttributes.frame.origin.x - firstCellAttributes.frame.origin.x,
                                    y: 0)
        self.collectionView.setContentOffset(contentOffset, animated: false)
    }
}

上述代碼中,我們使用了setContentOffset方法來滾動集合視圖。我們獲取了第一條數(shù)據(jù)和最后一條數(shù)據(jù)的布局屬性,然后根據(jù)它們的位置計(jì)算出正確的contentOffset值,使得集合視圖能夠滾動到最后一條數(shù)據(jù)。

3. 使用scrollRectToVisible方法進(jìn)行滾動集合視圖

DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
    let firstIndexPath = IndexPath(item: 0, section: 0)
    let lastIndexPath = IndexPath(item: self.recordArray.count - 1, section: 0)

    if let firstCellAttributes = self.collectionView.layoutAttributesForItem(at: firstIndexPath),
       let lastCellAttributes = self.collectionView.layoutAttributesForItem(at: lastIndexPath) {
        let firstRect = firstCellAttributes.frame
        let lastRect = lastCellAttributes.frame
        let visibleRect = CGRect(x: lastRect.origin.x, y: 0, width: self.collectionView.bounds.width, height: self.collectionView.bounds.height)
        self.collectionView.scrollRectToVisible(visibleRect, animated: false)
    }
}

在上述代碼中,我們使用了scrollRectToVisible方法來滾動集合視圖。我們獲取了第一條數(shù)據(jù)和最后一條數(shù)據(jù)的布局屬性,并根據(jù)它們的位置計(jì)算出一個(gè)可見的矩形區(qū)域,然后將該矩形區(qū)域滾動到可見范圍內(nèi)。文章來源地址http://www.zghlxwxcb.cn/news/detail-614378.html

到了這里,關(guān)于Swift 讓ScrollView滾動到具體某個(gè)位置的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 微信小程序 scrollview 滾動到指定位置

    微信小程序 scrollview 滾動到指定位置

    在微信小程序中,實(shí)現(xiàn) ScrollView 滾動到指定位置有多種方法,下面將介紹三種主要的實(shí)現(xiàn)方式。 通過設(shè)置 scroll-view 組件的 scroll-top 屬性,我們可以實(shí)現(xiàn)滾動到指定位置。以下是具體實(shí)現(xiàn)方式: 滾動邏輯: 在上述代碼中,scroll-top是一個(gè)動態(tài)數(shù)據(jù),通過手動改變scroll-top的值來

    2024年02月04日
    瀏覽(18)
  • 小程序<scroll-view>滾動到指定位置/scrollview

    注意里面的 scroll-into-view=“{{scrollId}}” 和 id=“scrollView{{index}}” 屬性。 當(dāng)scrollId和scroll-view 組件中元素的id相同時(shí) 界面將自動滾動到此位置

    2024年02月12日
    瀏覽(36)
  • 【小程序】scrollview制作tab導(dǎo)航欄,點(diǎn)擊tab自動滾動到指定位置

    【小程序】scrollview制作tab導(dǎo)航欄,點(diǎn)擊tab自動滾動到指定位置

    前幾天遇到一個(gè)需求,做一個(gè)答題的界面,頂部是題目編號列表,下面是題目,點(diǎn)擊題目編號跳轉(zhuǎn)到相應(yīng)題目。一開始想用vant weapp中的Tab標(biāo)簽頁組件來做,也試著用過,中間遇到了某些問題效果不太理想。具體我也忘了啥問題。最后還是用scroll-view+swiper來實(shí)現(xiàn)了這一個(gè)功能。

    2024年03月22日
    瀏覽(27)
  • 「Swift」取消UITableView起始位置在狀態(tài)欄下方開始

    「Swift」取消UITableView起始位置在狀態(tài)欄下方開始

    前言:在寫頁面UI時(shí)發(fā)現(xiàn),當(dāng)隱藏了NavigationBar時(shí),即使UITableView是從(0,0)進(jìn)行布局,也會一直在手機(jī)狀態(tài)欄下方進(jìn)行展示布局,而我的想法是希望UITableView可以從狀態(tài)欄處就進(jìn)行展示布局 當(dāng)前頁面展示: 問題查找和排查: 通過進(jìn)行修改tableHeaderView的坐標(biāo),發(fā)現(xiàn)無論如何將hea

    2024年02月03日
    瀏覽(19)
  • Swift語言基礎(chǔ)

    Swift 是一種支持多編程范式和編譯式的開源編程語言,蘋果于2014年WWDC(蘋果開發(fā)者大會)發(fā)布,用于開發(fā) iOS,OS X 和 watchOS 應(yīng)用程序。 Swift 結(jié)合了 C 和 Objective-C 的優(yōu)點(diǎn)并且不受 C 兼容性的限制。 Swift 在 Mac OS 和 iOS 平臺可以和 Object-C 使用相同的運(yùn)行環(huán)境。 官方手冊: swift官

    2024年02月12日
    瀏覽(22)
  • iOS開發(fā)Swift-函數(shù)

    ?(1)無參函數(shù) (2)多參函數(shù) (3)無返回值 (4)多重返回值 (5)可選元組返回類型(元組可以是nil) (6)隱式返回的函數(shù) 任一可以被寫成一行return的函數(shù),return(x) + for。 調(diào)用的時(shí)候: 方法名(for: 參數(shù)) (1)指定參數(shù)標(biāo)簽 (2)忽略參數(shù)標(biāo)簽 (3)默認(rèn)參數(shù)值 (4)可變參數(shù) 一個(gè)可變參數(shù)可接受0個(gè)或多

    2024年02月11日
    瀏覽(27)
  • iOS開發(fā)Swift-枚舉

    枚舉:一組相關(guān)的值定義了一個(gè)共同的類型,使你可以在代碼中以類型安全的方式來使用這些值。 原始值:定義枚舉時(shí)被預(yù)先填充的值。 (1)整數(shù)為原始值時(shí),隱式賦值遞增1。未設(shè)置原始值時(shí),默認(rèn)為0,之后遞增1. (2)字符串為原始值,隱式賦值為枚舉成員的名稱。

    2024年02月11日
    瀏覽(28)
  • iOS開發(fā)Swift-閉包

    將很長的閉包表達(dá)式作為最后一個(gè)參數(shù)傳遞給函數(shù),不用寫出他的參數(shù)標(biāo)簽。 嵌套函數(shù)可捕獲其外部函數(shù)所有參數(shù)、變量、常量。 當(dāng)一個(gè)閉包作為一個(gè)參數(shù)傳到一個(gè)函數(shù)中,但閉包在函數(shù)返回之后才被執(zhí)行,則稱閉包逃逸。 標(biāo)注@escaping,表示允許閉包逃逸。 ?包裝傳遞給函數(shù)

    2024年02月11日
    瀏覽(19)
  • iOS開發(fā)Swift-控制流

    (1)復(fù)合匹配 (2)區(qū)間匹配 (3)元組匹配 (4)值綁定匹配 (5)where continue, break, fallthrough, return, throw continue: 停止本次循環(huán),開始下次循環(huán) break: 立即結(jié)束整個(gè)控制流??梢允褂胋reak忽略switch的分支。 fallthrough貫穿: switch中的case加入貫穿,case會穿透到下一個(gè)case/ default。

    2024年02月11日
    瀏覽(22)
  • iOS開發(fā)Swift-類型轉(zhuǎn)換

    1.Int或Double轉(zhuǎn)字符串 2.Double轉(zhuǎn)Int(去掉小數(shù)點(diǎn)后面的) 3.Int轉(zhuǎn)Double 4.向上轉(zhuǎn)型 5.向下轉(zhuǎn)型

    2024年02月09日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包