使用UIBarButton更改UIScrollView

时间:2011-08-12 05:58:19

标签: iphone cocoa-touch uiscrollview uibarbuttonitem

我试图拥有一组图像,我可以通过导航栏内的按钮(“上一页”和“下一页”)进行更改。

我试着理解如何使这成为可能,同时仍然在两者之间保持平滑的滑动动画。

我已经google pagecontrol,uiscrollview,uibarbutton获取提示但无济于事。

如果有人在iTunes U上的WWDC2011视频中看到了“自定义UIKit外观”的示例iPad应用程序,那就完全正是我想要做的事情。

任何提示赞赏

2 个答案:

答案 0 :(得分:1)

.h文件中的

别忘了"#import QuartzCore/QuartzCore.h"

IBOutlet UIImageView *imgV;
NSArray *arrimages;
int count;

-(IBAction)buttonTap:(UIButton*)sender;
.m文件中的

-(void)viewDidLoad {

    count = 0;
    arrimages = "init array of images here";

}

-(IBAction)buttonTap:(UIButton*)sender{

    CATransition *tr=[CATransition  animation];
    float dur = 0.50;//1.00-(0.25*Stage);
    tr.duration= dur;
    tr.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
    tr.type=kCATransitionPush;  
    tr.delegate=self;
    if (sender.tag > 0 && [arrimages count]-1 > count) {
        count++;
        imgV.image = [arrimages objectAtIndex:count];
        tr.subtype=kCATransitionFromRight;
        [imgV.layer addAnimation:tr forKey:nil];
    }else if (count > 0 && sender.tag == 0) {
        count--;
        imgV.image = [arrimages objectAtIndex:count];
        tr.subtype=kCATransitionFromLeft;
        [imgV.layer addAnimation:tr forKey:nil];
    }

}
.xib文件中的

放置2个UIButtons和UIImageView。

将两个按钮的touchupinside方法连接到buttonTap操作。

连接imageview的IBOutlet。

答案 1 :(得分:0)

滚动视图方法中的

DidEndScrollingAnimation是单击滚动视图属性和方法按钮时可以调用此方法的一个重要方法,请参阅此链接http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIScrollViewDelegate_Protocol/Reference/UIScrollViewDelegate.html