UITableViewCell状态切换效果

UITableViewCell状态切换效果

 

效果图

 

源码

https://github.com/YouXianMing/Animations

//
//  TableViewTapAnimationController.m
//  Animations
//
//  Created by YouXianMing on 15/11/27.
//  Copyright  2015年 YouXianMing. All rights reserved.
//

#import "TableViewTapAnimationController.h"
#import "TableViewTapAnimationCell.h"
#import "UIView+SetRect.h"
#import "TapAnimationModel.h"

@interface TableViewTapAnimationController () <UITableViewDataSource, UITableViewDelegate>

@property (nonatomic, strong) UITableView   *tableView;
@property (nonatomic, strong) NSArray       *dataArray;

@end

@implementation TableViewTapAnimationController

- (void)viewDidLoad {

    [super viewDidLoad];
}

- (void)setup {

    [super setup];

    // Init dataArray.
    _dataArray = @[[TapAnimationModel modelWithName:@"YouXianMing" selected:YES],
                   [TapAnimationModel modelWithName:@"NoZuoNoDie" selected:NO],
                   [TapAnimationModel modelWithName:@"Animations" selected:NO]];

    // Init TableView.
    self.tableView                = [[UITableView alloc] initWithFrame:CGRectMake(0, 64, self.view.width, self.view.height - 64)
                                                                 style:UITableViewStylePlain];
    self.tableView.delegate       = self;
    self.tableView.dataSource     = self;
    self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
    [self.tableView registerClass:[TableViewTapAnimationCell class] forCellReuseIdentifier:@"TableViewTapAnimationCell"];
    [self.view addSubview:self.tableView];

    [self bringTitleViewToFront];
}

#pragma mark - TableView相关方法
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {

    return _dataArray.count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    TableViewTapAnimationCell *cell = [tableView dequeueReusableCellWithIdentifier:@"TableViewTapAnimationCell"];
    cell.data                       = _dataArray[indexPath.row];
    [cell loadContent];
    [cell changeStateAnimated:NO];

    return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

    TableViewTapAnimationCell *cell = (TableViewTapAnimationCell *)[tableView cellForRowAtIndexPath:indexPath];
    [cell showSelectedAnimation];
    [cell changeStateAnimated:YES];

    [tableView deselectRowAtIndexPath:indexPath animated:YES];
}

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {

    return 80.f;
}

@end

细节

 

时间: 2024-10-01 12:50:18

UITableViewCell状态切换效果的相关文章

Swift开发之UITableView状态切换效果_Swift

效果 源码 https://github.com/YouXianMing/Swift-Animations // // TableViewTapAnimationController.swift // Swift-Animations // // Created by YouXianMing on 16/8/7. // Copyright 2016年 YouXianMing. All rights reserved. // import UIKit class TableViewTapAnima

listview-怎么实现ListView的item多次点击,两种状态切换的效果?

问题描述 怎么实现ListView的item多次点击,两种状态切换的效果? 问题发出去,不知道会有多少朋友看到.路过的大神,请多看看我这菜鸟,谢谢!最好能贴下代码! 解决方案 我自己在实现的过程中,增加了一个变量 isvisibility变量,在OnChildClick事件中判断,并赋值View.visible或者View.INVISIBILITY值,但是不知道怎么回调.通过notify通知,出错.不知道大神么是怎样的解决方案??请多多指教,谢谢你!! 解决方案二: 比如讲,单击实现一个标签显示

html5各种页面切换效果和模态对话框用法总结

 本文详细总结了html5各种页面切换效果和模态对话框用法.分享给大家供大家参考.具体分析如下: 页面动画: data-transition 属性可以定义页面切换是的动画效果. 例如:<a href="index.html" data-transition="pop">I'll pop</a> data-transition 参数表: 参数说明 slide 从右侧向左滑入页面 slideup 从底部向上滑入 slidedown 从上向下滑入

Android实现微信在线/离线状态切换

先看效果图,有图有效果了才有动力(右边是关闭wifi/3g之后的Title样子) 首先了解一下网络状态的判断方法,网络状态是一个SystemService,可以通过context.getSystemService (String name)获取,对应的服务名称为context.CONNECTIVITY_SERVICE: 获取网络状态管理对象 ConnectivityManager connManger = (ConnectivityManager) getSystemService(CONNEC

jQuery实现选项卡切换效果简单演示_jquery

本文实例讲述了jQuery实现选项卡切换效果简单演示代码.分享给大家供大家参考.具体如下: 运行效果图如下 一.主体程序 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>选项卡</title> <link type="text/css" rel="stylesheet" href="c

很棒的js选项卡切换效果_javascript技巧

本文实例为大家分享了js实现简单的选项卡切换效果的具体代码,供大家参考,具体内容如下 js选项卡切换代码: <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus"> <meta name="Autho

Android中实现“程序前后台切换效果”和“返回正在运行的程序,而不是一个新Activity”

ANDROID 一.首先是返回正在运行的程序,而不是新的ACTIVITY. 多网上关于 通知栏的例子都是打开一个新的Activity,代码也很多.根据那些代码如下    public void shownotification(String tab)    {        NotificationManager barmanager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);        Notif

Android实现程序前后台切换效果

太久没动这一块了.借助了下面的文章得到了类似QQ的效果 ,是比较复杂的TABHOST的处理~有需要的Q我. 转了下面的文章: ================ 本文演示如何在Android中实现程序前后台切换效果.  在介绍程序实现之前,我们先看下Android中Activities和Task的基础知识. 我们都知道,一个Activity 可以启动另一个Activity,即使这个Activity是定义在别一个应用程序里的,比如说,想要给用户展示一个地图的信息,现在已经有一个Activity可以做

Android关于Activity切换效果的实现加强

早前做完一个应用后期需要加入点效果化.   相对于iPhone上应用的效果,最为经典的界面切换视觉效果就是,放大进入和缩小退出.   还好Android也早以有了这样对应的动画文件.   并且如大家所知的,提供了   overridePendingTransition()这个   最简单实现的方法api.   ------------------------   但是如网上所说的:   这里需要特别说明的是,关于overridePendingTransition这个函数,有两点需要主意:  1.