注册 登录
主题 : Path 2.0 大部分效果分享(tableview左右滑动,时间,menu动画),有码
级别: 侠客
UID: 8662
精华: 0
发帖: 83
可可豆: 812 CB
威望: 812 点
在线时间: 522(时)
注册时间: 2009-09-11
最后登录: 2015-12-14
0 楼:  发表于: 2011-12-21 12:53    发自: Web Page

Path 2.0 大部分效果分享(tableview左右滑动,时间,menu动画),有码   



实现了大部分Path 2.0 特效
注(iOS5 only)
tableview添加手势检测代码

- (void)awakeFromNib{
 UIPanGestureRecognizer* recognizer; 
    // handleSwipeFrom 是偵測到手势,所要呼叫的方法 
    recognizer = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handlePanFrom:)]; 
    // 不同的 Recognizer 有不同的实体变数 
    // 例如 SwipeGesture 可以指定方向 
    // 而 TapGesture 則可以指定次數 
    //recognizer.direction = UISwipeGestureRecognizerDirectionLeft | UISwipeGestureRecognizerDirectionRight; 
    recognizer.delegate = self;
    [_tableView addGestureRecognizer:recognizer]; 
    [recognizer release]; 
}

- (BOOL)gestureRecognizerShouldBegin:(UIPanGestureRecognizer *)gestureRecognizer
{
    CGPoint translation = [gestureRecognizer translationInView:[[UIApplication sharedApplication] keyWindow]];
    
    // Check for horizontal gesture
    if (sqrt(translation.x * translation.x) / sqrt(translation.y * translation.y) > 1)
    {
        return YES;
    }
    
    return NO;
}

- (void)handlePanFrom:(UIPanGestureRecognizer*)recognizer { 

    if (recognizer.state == UIGestureRecognizerStateBegan) {
        ;
    }
    else if (recognizer.state == UIGestureRecognizerStateChanged) {
        CGFloat xOffSet = [recognizer translationInView:[[UIApplication sharedApplication] keyWindow]].x;
        
        AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
        if (xOffSet < 0) {
            [appDelegate makeRightViewVisible];
        }
        else if (xOffSet > 0) {
            [appDelegate makeLeftViewVisible];
        }
        
        self.navigationController.view.frame = CGRectMake(xOffSet, 
                                                          self.navigationController.view.frame.origin.y, 
                                                          self.navigationController.view.frame.size.width, 
                                                          self.navigationController.view.frame.size.height);
    }
    else if (recognizer.state == UIGestureRecognizerStateEnded) {
        if (self.navigationController.view.frame.origin.x < -kTriggerOffSet) 
            [self moveToLeftSide];
        // animate to right side
        else if (self.navigationController.view.frame.origin.x > kTriggerOffSet) 
            [self moveToRightSide];
        // reset
        else 
            [self restoreViewLocation];

    }
}





 






见附件
Path2DemoPrj.zip (185 K) 下载次数:4445



[ 此帖被zgrubby在2011-12-22 14:11重新编辑 ]

级别: 侠客
UID: 8662
精华: 0
发帖: 83
可可豆: 812 CB
威望: 812 点
在线时间: 522(时)
注册时间: 2009-09-11
最后登录: 2015-12-14
1 楼:  发表于: 2011-12-21 13:29    发自: Web Page
感谢 easonaccount 的分享关于path2滑动的代码
级别: 新手上路
UID: 72766
精华: 0
发帖: 45
可可豆: 342 CB
威望: 342 点
在线时间: 246(时)
注册时间: 2011-05-29
最后登录: 2017-11-15
2 楼:  发表于: 2011-12-21 13:32    发自: Web Page
好,分享下,不过我跑起来有时候会crash.
共同成长,共同分享。
级别: 侠客
UID: 8662
精华: 0
发帖: 83
可可豆: 812 CB
威望: 812 点
在线时间: 522(时)
注册时间: 2009-09-11
最后登录: 2015-12-14
3 楼:  发表于: 2011-12-21 13:33    发自: Web Page
回 2楼(talentwsc) 的帖子
iOS 5 only
只能在ios5 模拟器下跑
级别: 侠客

状态: 连续签到 - [2天]
UID: 93895
精华: 0
发帖: 110
可可豆: 480 CB
威望: 515 点
在线时间: 176(时)
注册时间: 2011-09-19
最后登录: 2016-10-24
4 楼:  发表于: 2011-12-21 14:06    发自: Web Page
mark~mark~mark~mark~mark~mark~mark~mark~mark~






战火为何燃?秋叶为何落?实为天性不可夺?吾辈心中亦有惑。怒拳为谁握?护国安邦惩奸恶。道法自然祛心魔。战不休,惑不息。吾辈何以为战!
级别: 新手上路
UID: 98827
精华: 0
发帖: 31
可可豆: 220 CB
威望: 220 点
在线时间: 29(时)
注册时间: 2011-10-19
最后登录: 2015-03-14
5 楼:  发表于: 2011-12-21 14:07    发自: Web Page
  
级别: 新手上路
UID: 27483
精华: 0
发帖: 44
可可豆: 314 CB
威望: 314 点
在线时间: 149(时)
注册时间: 2010-08-12
最后登录: 2014-11-05
6 楼:  发表于: 2011-12-21 14:15    发自: Web Page
貌似很牛逼..
级别: 骑士

UID: 65370
精华: 0
发帖: 168
可可豆: 1215 CB
威望: 1105 点
在线时间: 183(时)
注册时间: 2011-04-21
最后登录: 2016-06-22
7 楼:  发表于: 2011-12-21 14:36    发自: Web Page
这个好东西,顶
级别: 侠客
UID: 76279
精华: 0
发帖: 118
可可豆: 1117 CB
威望: 1117 点
在线时间: 253(时)
注册时间: 2011-06-17
最后登录: 2017-11-05
8 楼:  发表于: 2011-12-21 15:51    发自: Web Page
膜拜各位大神!



级别: 新手上路
UID: 20897
精华: 0
发帖: 48
可可豆: 429 CB
威望: 399 点
在线时间: 213(时)
注册时间: 2010-05-31
最后登录: 2015-06-19
9 楼:  发表于: 2011-12-21 21:57    发自: Web Page
必须mark啊..!!!

CocoaChina社区转载内容已尽可能注明出处,如未能核实来源或转发内容图片有权利瑕疵的,请及时联系社区进行修改或删除【联系方式QQ : 3442093904 邮箱:support@cocoachina.com】文章内容为作者独立观点,不代表CocoaChina社区立场。版权归原作者所有,如申请授权请联系作者,因文章侵权CocoaChina社区不承担任何法律及连带责任。

描述
快速回复

关注本帖(如果有新回复会站内信通知您)

发帖、回帖都会得到可观的积分奖励。查看论坛积分规则

按"Ctrl+Enter"直接提交
    顶部