IOS-ScrollView創造Android-ViewPager效果

來源:互聯網
上載者:User

標籤:android   class   blog   code   http   tar   

1.將圖片放進images檔案夾,並改名為images.bundle.拖進項目中



2拖動scrollView 並在左上方按住Scroll View 拖到View Controller中 選擇deleagte.

這時候.指定Scroll View的代理為controller. 



為指定的controller加上代理

#import <UIKit/UIKit.h>@interface CSZViewController : UIViewController <UIScrollViewDelegate>//ViewPager@property (weak, nonatomic) IBOutlet UIScrollView *scrollView;@end

@implementation CSZViewController- (void)viewDidLoad{    [super viewDidLoad];        int width=self.view.frame.size.width;    int height=self.view.frame.size.height;        //從bundle壓縮檔中取出多頁的內容路徑    NSString *bundlePath=[[NSBundle mainBundle] pathForResource:@"images" ofType:@"bundle"];    NSBundle *bundle=[[NSBundle alloc] initWithPath:bundlePath];    self.imagesArr=[bundle pathsForResourcesOfType:@"jpg" inDirectory:nil];self.scrollView.contentSize=CGSizeMake(self.imagesArr.count*width,height);        //建立分頁    for (int i=0; i<self.imagesArr.count; i++) {        UIImageView *itemImage=[[UIImageView alloc] init];        itemImage.image=[UIImage imageWithContentsOfFile:self.imagesArr[i]];        itemImage.frame=CGRectMake(i*width, 0, width, height);        [self.scrollView addSubview:itemImage];    }        //消除滑動時出現的滑塊    self.scrollView.showsHorizontalScrollIndicator=NO;    //使ViewPager富有彈性.分割每頁    self.scrollView.pagingEnabled=YES;    //建立標識    UIPageControl *ctr=[[UIPageControl alloc] init];    ctr.bounds=CGRectMake(0, 0, 150, 50);    ctr.center=CGPointMake(width*0.5, height-50);    ctr.currentPageIndicatorTintColor=[UIColor redColor];    ctr.pageIndicatorTintColor=[UIColor grayColor];    ctr.currentPage=1;    //聲明指標的個數。如果不設定將不顯示    ctr.numberOfPages=self.imagesArr.count;    [ctr addTarget:self action:@selector(pageIndict:) forControlEvents:UIControlEventValueChanged];    [self.view addSubview:ctr];    //因為self.view已經綁定了一次,所以pageControl為弱引用    self.pageControl=ctr;}#pragma mark 點擊指標 跳轉ViewPager- (IBAction)pageIndict:(id)sender{    int curr=self.pageControl.currentPage;    NSLog(@"%d",curr);    self.scrollView.contentOffset=CGPointMake(self.view.frame.size.width*curr, 0)    ;}#pragma mark 當滑動ViewPager時停下來 讓對應的指標進行改變-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{    int offSetX=self.scrollView.contentOffset.x;    int index=offSetX/self.view.frame.size.width;    self.pageControl.currentPage=index;    }@end


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.