zoukankan      html  css  js  c++  java
  • UICollectionViewCell点击高亮效果(附带效果GIF)

    首先效果如下:

    背景是这样的:UI上使用的是UICollectionView,所以后面会使用它的协议方法完成。

    实现思路是这样的:高亮状态+点击后短时间内保持颜色变化

    实现的代码参考如下:

    // Cell被点击后短时间内保持颜色的变化
    - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
    WSFEvaluateTagItem
    *cell = (WSFEvaluateTagItem *)[collectionView cellForItemAtIndexPath:indexPath]; cell.backgroundColor = [UIColor blueColor]; dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ cell.backgroundColor = [UIColor whiteColor]; }); } // 长按的情况下要实现高亮状态下的颜色保持 - (void)collectionView:(UICollectionView *)collectionView didHighlightItemAtIndexPath:(NSIndexPath *)indexPath{ WSFEvaluateTagItem *cell = (WSFEvaluateTagItem *)[collectionView cellForItemAtIndexPath:indexPath]; cell.backgroundColor = [UIColor blueColor]; }
    - (void)collectionView:(UICollectionView *)collectionView didUnhighlightItemAtIndexPath:(NSIndexPath *)indexPath{ WSFEvaluateTagItem *cell = (WSFEvaluateTagItem *)[collectionView cellForItemAtIndexPath:indexPath]; cell.backgroundColor = [UIColor whiteColor]; }
    - (BOOL)collectionView:(UICollectionView *)collectionView shouldHighlightItemAtIndexPath:(NSIndexPath *)indexPath{ return YES; }
  • 相关阅读:
    day⑥:logging模块
    day⑥:shelve模块
    day⑥:xml模块
    day⑤:冒泡排序
    day⑤:模块
    day⑤:re深入
    day④:递归
    day④:迭代器
    day④:装饰器
    day③:函数式编程
  • 原文地址:https://www.cnblogs.com/cchHers/p/9876979.html
Copyright © 2011-2022 走看看