cari

Rumah  >  Soal Jawab  >  teks badan

ios - 怎么用collectionView 做一个横向无限循环滚动,而滚动后的item最终可以回到屏幕中间。

参考了一些案例,但是实现了滚动后item能回到屏幕中间,却不知道怎么实现无限循环滚动。利用scrollView的代理方法,虽然实现了循环滚动。但是这样子,就会令item滚动后回到屏幕中间这个功能失效。求大神支招!!!

PHPzPHPz2771 hari yang lalu837

membalas semua(2)saya akan balas

  • 高洛峰

    高洛峰2017-04-18 09:43:21

    Saya perlu menulis jawapan saya sendiri lagi Adakah kerana saya bertanya soalan itu tidak ada yang menjawab? Baiklah! Saya akan menyelesaikannya sendiri!

     -(CGPoint)targetContentOffsetForProposedContentOffset:(CGPoint)proposedContentOffset withScrollingVelocity:(CGPoint)velocity

    Kaedah ini biasanya digunakan untuk menentukan kedudukan akhir item Mengubah suai kaedah ini boleh mencapai beberapa kesan penjerapan Walau bagaimanapun, apabila menghadapi item kitaran, kita biasanya mencapai kesan kitaran melalui kaedah perwakilan scrollView, tetapi melalui As ini. untuk kaedah tersebut, kerana contentOffset collectionView diubah, kaedah di atas tidak boleh mengira kedudukan hentian akhir item tersebut. Jadi apa yang perlu kita lakukan untuk menggelung dan menatal item ke kedudukan yang ditentukan?
    Maafkan saya kerana menggunakan kaedah yang sangat rendah

    -( NSInteger )collectionView:( UICollectionView *)collectionView numberOfItemsInSection:( NSInteger )section
    {
        return 10000;
    }

    Tetapkan bilangan item, - -! Sebab mekanisme penggunaan semula adalah supaya kita tidak perlu risau tentang masalah ingatan dan prestasi! Tolong beri saya nasihat jika ada cara yang lebih baik...

    balas
    0
  • PHP中文网

    PHP中文网2017-04-18 09:43:21

    加头加尾, contohnya, jika terdapat empat item, item sebenar hendaklah 6, iaitu 412341. Apabila menatal secara manual ke belakang 1, kod akan terus meluncur (tanpa kesan animasi) ke hadapan 1 , dan arah sebaliknya adalah serupa.

    balas
    0
  • Batalbalas