利用UICollectionView模仿iOS系統桌面圖標的交互:LxGridView

jopen 9年前發布 | 22K 次閱讀 iOS開發 移動開發 LxGridView

利用UICollectionView模仿iOS系統桌面圖標的交互,作用如動圖。

* demo

Installation

You only need drag directory LxGridView to your project.

Support

Minimum support iOS version: iOS 6.0

Usage

You can use LxGridView as convenient as UICollectionView.

_gridViewFlowLayout = [[LxGridViewFlowLayout alloc]init]; // ... config _gridViewFlowLayout

_gridView = [[LxGridView alloc]initWithFrame:GRIDVIEW_FRAME collectionViewLayout:_gridViewFlowLayout]; // ... congif _gridView

[_gridView registerClass:[LxGridViewCell class] forCellWithReuseIdentifier:GRIDVIEW_CELL_REUSE_IDENTIFIER];

// implement delegate method

  • (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section { return self.dataArray.count; }

  • (UICollectionViewCell )collectionView:(UICollectionView )collectionView cellForItemAtIndexPath:(NSIndexPath )indexPath { LxGridViewCell cell = [collectionView dequeueReusableCellWithReuseIdentifier:LxGridViewCellReuseIdentifier forIndexPath:indexPath];

    cell.delegate = self; cell.editing = _gridView.editing;

    // ... config cell

    return cell; }

  • (void)collectionView:(UICollectionView )collectionView itemAtIndexPath:(NSIndexPath )sourceIndexPath willMoveToIndexPath:(NSIndexPath )destinationIndexPath { NSDictionary dataDict = self.dataArray[sourceIndexPath.item]; [self.dataArray removeObjectAtIndex:sourceIndexPath.item]; [self.dataArray insertObject:dataDict atIndex:destinationIndexPath.item]; }

  • (void)deleteButtonClickedInGridViewCell:(LxGridViewCell )gridViewCell { NSIndexPath gridViewCellIndexPath = [_gridView indexPathForCell:gridViewCell];

    if (gridViewCellIndexPath) {

      [self.dataArray removeObjectAtIndex:gridViewCellIndexPath.item];
      [_gridView performBatchUpdates:^{
          [_gridView deleteItemsAtIndexPaths:@[gridViewCellIndexPath]];
      } completion:nil];
    

    } }</pre>

    項目主頁:http://www.baiduhome.net/lib/view/home/1435819819591

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!