一,效果圖。二,工程圖。三,代碼。RootViewController.h#import @interface RootViewController : UIViewController{ UIScrollView *scoreView;}@endRootViewController.m#im...
一,效果圖。
二,工程圖。
三,代碼。
RootViewController.h
#import <UIKit/UIKit.h>
@interface RootViewController : UIViewController
<UIScrollViewDelegate>
{
UIScrollView *scoreView;
}
@end
RootViewController.m
#import "RootViewController.h"
@interface RootViewController ()
@end
@implementation RootViewController
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
[self initBackgroundView];
}
#pragma -mark -functions
-(void)initBackgroundView
{
self.view.backgroundColor=[UIColor greenColor];
scoreView=[[UIScrollView alloc]initWithFrame:CGRectMake(0, 100, 320, 140)];
scoreView.backgroundColor=[UIColor greenColor];
scoreView.contentSize=CGSizeMake(320*3, 140);
scoreView.showsVerticalScrollIndicator=NO;
scoreView.showsHorizontalScrollIndicator=NO;
scoreView.scrollEnabled=NO;
scoreView.delegate=self;
[self.view addSubview:scoreView];
for (int i=0; i<4; i++) {
UIImageView* imageView=[[UIImageView alloc]initWithFrame:CGRectMake(i*320, 0, 320, 140)];
imageView.image=[UIImage imageNamed:[NSString stringWithFormat:@"%d.jpg",i]];
if (i==3) {
imageView.image=[UIImage imageNamed:@"0.jpg"];
}
[scoreView addSubview:imageView];
}
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timer:) userInfo:nil repeats:YES];
UIPageControl* pc = [[UIPageControl alloc] initWithFrame:CGRectMake(0, 220, 320, 20)];
pc.numberOfPages = 3;
pc.tag=100;
[pc addTarget:self action:@selector(pc:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:pc];
}
-(void)timer:(NSTimer *)timer{
if (scoreView.contentOffset.x==320*3) {
scoreView.contentOffset=CGPointMake(0, 0);
}
[scoreView setContentOffset:CGPointMake(scoreView.contentOffset.x+320,0) animated:YES];
}
- (void)pc:(UIPageControl*)pc{
scoreView.contentOffset=CGPointMake(pc.currentPage*320, 0);
}
#pragma -mark -UIScrollerViewDelegate
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
UIPageControl* pc = (UIPageControl*)[self.view viewWithTag:100];
pc.currentPage = scrollView.contentOffset.x / 320;
if (scoreView.contentOffset.x==320*3) {
pc.currentPage=0;
}
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}