IOS UIScroView 实现循环滚动 实现固定相框切换图片

分别创建若干张图片  这里我创建7张

若干个相框 这里我创建3个  ,原理是一样滴


效果:可以实现循环效果,而且只用到3个相框

优点:实现循环滚动

缺点:有点耗内存

下面是实现代码

删除changImageFrame方法也是能用的

//
//  KViewController.m
//  UI_10_01
//
//  Created by vincent on 16/1/5.
//  Copyright © 2016年 vincent. All rights reserved.
//

#import "KViewController.h"
#import "ImageZoomView.h"
#import "MViewController.h"
@interface KViewController ()<UIScrollViewDelegate>
{
    NSMutableArray *scrollArray;  //相片数组
    NSMutableArray *imageViewArray; //相框数组
}
@end

@implementation KViewController

- (void)viewDidLoad {
    scrollArray=[NSMutableArray arrayWithCapacity:20];
    imageViewArray =[NSMutableArray arrayWithCapacity:20];
    [scrollArray addObject:[UIImage imageNamed:@"1"]];
    [scrollArray addObject:[UIImage imageNamed:@"2"]];
    [scrollArray addObject:[UIImage imageNamed:@"3"]];
    [scrollArray addObject:[UIImage imageNamed:@"4"]];
    [scrollArray addObject:[UIImage imageNamed:@"5"]];
    [scrollArray addObject:[UIImage imageNamed:@"6"]];
    [scrollArray addObject:[UIImage imageNamed:@"7"]];
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor blackColor];
    
    UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, Screen_Width, Screen_Height*4/5)];
    [self.view addSubview:scrollView];
    scrollView.contentOffset=CGPointMake(Screen_Width, 0);
    for (int i = 0; i < 3; i++) {
        ImageZoomView *imageView = [[ImageZoomView alloc] initWithFrame:CGRectMake(0+Screen_Width*i, 0, Screen_Width, Screen_Height*4/5)];
        imageView.image = [scrollArray objectAtIndex:i];
        [imageViewArray addObject:imageView];
        [scrollView addSubview:imageView];
    }
    scrollView.pagingEnabled = YES;
    scrollView.contentSize = CGSizeMake(Screen_Width*3, 0);
    scrollView.delegate=self;
    
}

//-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
//    [self.navigationController pushViewController:[MViewController new] animated:YES];
//}


- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    
    // Dispose of any resources that can be recreated.
}

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/
//相框移动
-(void)changScrollViewFrame{
<span style="white-space:pre">	</span>//每次移动都固定一次imageView各位置
    UIImageView  *temp2=[imageViewArray objectAtIndex:1];
    temp2.frame=CGRectMake(Screen_Width, 0, Screen_Width, Screen_Height*4/5);
    UIImageView *temp3=[imageViewArray objectAtIndex:2];
    temp3.frame=CGRectMake(Screen_Width*2, 0, Screen_Width,Screen_Height*4/5);
        UIImageView *temp1= [imageViewArray objectAtIndex:0];
    temp1.frame=CGRectMake(0, 0, Screen_Width, Screen_Height*4/5);
}
//相片移动
-(void)changImageFrame{
    UIImageView *temp1= [imageViewArray objectAtIndex:0];
    temp1.image=scrollArray[0];
    UIImageView  *temp2=[imageViewArray objectAtIndex:1];
    temp2.image=scrollArray[1];
    UIImageView *temp3=[imageViewArray objectAtIndex:2];
    temp3.image=scrollArray[2];
   
}
-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
    CGFloat x=scrollView.contentOffset.x;
    if (x==Screen_Width*2) {
        
       UIImageView *qq= [imageViewArray objectAtIndex:0];
        [imageViewArray removeObjectAtIndex:0];
        [imageViewArray addObject:qq];
        [self changScrollViewFrame];
        
        UIImage *ww=[scrollArray objectAtIndex:0];
        [scrollArray removeObjectAtIndex:0];
        [scrollArray addObject:ww];
        [self changImageFrame];
        <p class="p1"><span class="s1">//</span></p><p class="p1"><span class="s1">//  KViewController.m</span></p><p class="p1"><span class="s1">//  UI_10_01</span></p><p class="p1"><span class="s1">//</span></p><p class="p1"><span class="s1">//  Created by vincent on 16/1/5.</span></p><p class="p1"><span class="s1">//  Copyright © 2016</span><span class="s2">年</span><span class="s1"> vincent. All rights reserved.</span></p><p class="p1"><span class="s1">//</span></p><p class="p2"><span class="s1"></span>
</p><p class="p3"><span class="s3">#import </span><span class="s1">"KViewController.h"</span></p><p class="p3"><span class="s3">#import </span><span class="s1">"ImageZoomView.h"</span></p><p class="p3"><span class="s3">#import </span><span class="s1">"MViewController.h"</span></p><p class="p4"><span class="s4">@interface</span><span class="s5"> </span><span class="s6">KViewController</span><span class="s5"> ()<</span><span class="s1">UIScrollViewDelegate</span><span class="s5">></span></p><p class="p5"><span class="s1">{</span></p><p class="p5"><span class="s1">    </span><span class="s7">NSMutableArray</span><span class="s1"> *scrollArray;  </span><span class="s8">//</span><span class="s9">相片数组</span></p><p class="p5"><span class="s1">    </span><span class="s7">NSMutableArray</span><span class="s1"> *imageViewArray; </span><span class="s8">//</span><span class="s9">相框数组</span></p><p class="p5"><span class="s1">}</span></p><p class="p6"><span class="s1">@end</span></p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s4">@implementation</span><span class="s1"> KViewController</span></p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s1">- (</span><span class="s4">void</span><span class="s1">)viewDidLoad {</span></p><p class="p7"><span class="s5">    </span><span class="s10">scrollArray</span><span class="s5">=[</span><span class="s7">NSMutableArray</span><span class="s5"> </span><span class="s1">arrayWithCapacity</span><span class="s5">:</span><span class="s11">20</span><span class="s5">];</span></p><p class="p7"><span class="s5">    </span><span class="s10">imageViewArray</span><span class="s5"> =[</span><span class="s7">NSMutableArray</span><span class="s5"> </span><span class="s1">arrayWithCapacity</span><span class="s5">:</span><span class="s11">20</span><span class="s5">];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"1"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"2"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"3"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"4"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"5"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"6"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"7"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s4">super</span><span class="s5"> </span><span class="s1">viewDidLoad</span><span class="s5">];</span></p><p class="p8"><span class="s5">    </span><span class="s4">self</span><span class="s5">.</span><span class="s1">view</span><span class="s5">.</span><span class="s1">backgroundColor</span><span class="s5"> = [</span><span class="s7">UIColor</span><span class="s5"> </span><span class="s13">blackColor</span><span class="s5">];</span></p><p class="p2"><span class="s1">    </span></p><p class="p5"><span class="s1">    </span><span class="s7">UIScrollView</span><span class="s1"> *scrollView = [[</span><span class="s7">UIScrollView</span><span class="s1"> </span><span class="s13">alloc</span><span class="s1">] </span><span class="s13">initWithFrame</span><span class="s1">:</span><span class="s13">CGRectMake</span><span class="s1">(</span><span class="s11">0</span><span class="s1">, </span><span class="s11">0</span><span class="s1">, </span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s14">Screen_Height</span><span class="s1">*</span><span class="s11">4</span><span class="s1">/</span><span class="s11">5</span><span class="s1">)];</span></p><p class="p5"><span class="s1">    [</span><span class="s4">self</span><span class="s1">.</span><span class="s15">view</span><span class="s1"> </span><span class="s13">addSubview</span><span class="s1">:scrollView];</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">contentOffset</span><span class="s1">=</span><span class="s13">CGPointMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p5"><span class="s1">    </span><span class="s4">for</span><span class="s1"> (</span><span class="s4">int</span><span class="s1"> i = </span><span class="s11">0</span><span class="s1">; i < </span><span class="s11">3</span><span class="s1">; i++) {</span></p><p class="p5"><span class="s1">        </span><span class="s6">ImageZoomView</span><span class="s1"> *imageView = [[</span><span class="s6">ImageZoomView</span><span class="s1"> </span><span class="s13">alloc</span><span class="s1">] </span><span class="s13">initWithFrame</span><span class="s1">:</span><span class="s13">CGRectMake</span><span class="s1">(</span><span class="s11">0</span><span class="s1">+</span><span class="s14">Screen_Width</span><span class="s1">*i, </span><span class="s11">0</span><span class="s1">, </span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s14">Screen_Height</span><span class="s1">*</span><span class="s11">4</span><span class="s1">/</span><span class="s11">5</span><span class="s1">)];</span></p><p class="p5"><span class="s1">        imageView.</span><span class="s10">image</span><span class="s1"> = [</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:i];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:imageView];</span></p><p class="p5"><span class="s1">        [scrollView </span><span class="s13">addSubview</span><span class="s1">:imageView];</span></p><p class="p5"><span class="s1">    }</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">pagingEnabled</span><span class="s1"> = </span><span class="s4">YES</span><span class="s1">;</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">contentSize</span><span class="s1"> = </span><span class="s13">CGSizeMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">*</span><span class="s11">3</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">delegate</span><span class="s1">=</span><span class="s4">self</span><span class="s1">;</span></p><p class="p2"><span class="s1">    </span></p><p class="p5"><span class="s1">}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p1"><span class="s1">//-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{</span></p><p class="p1"><span class="s1">//    [self.navigationController pushViewController:[MViewController new] animated:YES];</span></p><p class="p1"><span class="s1">//}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s1">- (</span><span class="s4">void</span><span class="s1">)didReceiveMemoryWarning {</span></p><p class="p7"><span class="s5">    [</span><span class="s4">super</span><span class="s5"> </span><span class="s1">didReceiveMemoryWarning</span><span class="s5">];</span></p><p class="p2"><span class="s1">    </span></p><p class="p1"><span class="s5">    </span><span class="s1">// Dispose of any resources that can be recreated.</span></p><p class="p5"><span class="s1">}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p1"><span class="s1">/*</span></p><p class="p1"><span class="s1">#pragma mark - Navigation</span></p><p class="p9"><span class="s1"></span>
</p><p class="p1"><span class="s1">// In a storyboard-based application, you will often want to do a little preparation before navigation</span></p><p class="p1"><span class="s1">- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {</span></p><p class="p1"><span class="s1">    // Get the new view controller using [segue destinationViewController].</span></p><p class="p1"><span class="s1">    // Pass the selected object to the new view controller.</span></p><p class="p1"><span class="s1">}</span></p><p class="p1"><span class="s1">*/</span></p><p class="p10"><span class="s16">//</span><span class="s1">相框移动</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)changScrollViewFrame{</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1">  *temp2=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">1</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp2.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp3=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">2</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp3.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s1">Screen_Width</span><span class="s5">*</span><span class="s11">2</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">,</span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">        </span><span class="s7">UIImageView</span><span class="s1"> *temp1= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp1.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s11">0</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">}</span></p><p class="p10"><span class="s16">//</span><span class="s1">相片移动</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)changImageFrame{</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp1= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp1.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">0</span><span class="s1">];</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1">  *temp2=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">1</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp2.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">1</span><span class="s1">];</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp3=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">2</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp3.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">2</span><span class="s1">];</span></p><p class="p2"><span class="s1">   </span></p><p class="p5"><span class="s1">}</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)scrollViewDidScroll:(</span><span class="s7">UIScrollView</span><span class="s1"> *)scrollView{</span></p><p class="p8"><span class="s5">    </span><span class="s1">CGFloat</span><span class="s5"> x=scrollView.</span><span class="s1">contentOffset</span><span class="s5">.</span><span class="s1">x</span><span class="s5">;</span></p><p class="p5"><span class="s1">    </span><span class="s4">if</span><span class="s1"> (x==</span><span class="s14">Screen_Width</span><span class="s1">*</span><span class="s11">2</span><span class="s1">) {</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">       </span><span class="s7">UIImageView</span><span class="s1"> *qq= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p7"><span class="s5">        [</span><span class="s10">imageViewArray</span><span class="s5"> </span><span class="s1">removeObjectAtIndex</span><span class="s5">:</span><span class="s11">0</span><span class="s5">];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:qq];</span></p><p class="p12"><span class="s5">        [</span><span class="s4">self</span><span class="s5"> </span><span class="s1">changScrollViewFrame</span><span class="s5">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">        </span><span class="s7">UIImage</span><span class="s1"> *ww=[</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p7"><span class="s5">        [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">removeObjectAtIndex</span><span class="s5">:</span><span class="s11">0</span><span class="s5">];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:ww];</span></p><p class="p12"><span class="s5">        [</span><span class="s4">self</span><span class="s5"> </span><span class="s1">changImageFrame</span><span class="s5">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p1"><span class="s1">//</span></p><p class="p1"><span class="s1">//  KViewController.m</span></p><p class="p1"><span class="s1">//  UI_10_01</span></p><p class="p1"><span class="s1">//</span></p><p class="p1"><span class="s1">//  Created by vincent on 16/1/5.</span></p><p class="p1"><span class="s1">//  Copyright © 2016</span><span class="s2">年</span><span class="s1"> vincent. All rights reserved.</span></p><p class="p1"><span class="s1">//</span></p><p class="p2"><span class="s1"></span>
</p><p class="p3"><span class="s3">#import </span><span class="s1">"KViewController.h"</span></p><p class="p3"><span class="s3">#import </span><span class="s1">"ImageZoomView.h"</span></p><p class="p3"><span class="s3">#import </span><span class="s1">"MViewController.h"</span></p><p class="p4"><span class="s4">@interface</span><span class="s5"> </span><span class="s6">KViewController</span><span class="s5"> ()<</span><span class="s1">UIScrollViewDelegate</span><span class="s5">></span></p><p class="p5"><span class="s1">{</span></p><p class="p5"><span class="s1">    </span><span class="s7">NSMutableArray</span><span class="s1"> *scrollArray;  </span><span class="s8">//</span><span class="s9">相片数组</span></p><p class="p5"><span class="s1">    </span><span class="s7">NSMutableArray</span><span class="s1"> *imageViewArray; </span><span class="s8">//</span><span class="s9">相框数组</span></p><p class="p5"><span class="s1">}</span></p><p class="p6"><span class="s1">@end</span></p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s4">@implementation</span><span class="s1"> KViewController</span></p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s1">- (</span><span class="s4">void</span><span class="s1">)viewDidLoad {</span></p><p class="p7"><span class="s5">    </span><span class="s10">scrollArray</span><span class="s5">=[</span><span class="s7">NSMutableArray</span><span class="s5"> </span><span class="s1">arrayWithCapacity</span><span class="s5">:</span><span class="s11">20</span><span class="s5">];</span></p><p class="p7"><span class="s5">    </span><span class="s10">imageViewArray</span><span class="s5"> =[</span><span class="s7">NSMutableArray</span><span class="s5"> </span><span class="s1">arrayWithCapacity</span><span class="s5">:</span><span class="s11">20</span><span class="s5">];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"1"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"2"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"3"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"4"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"5"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"6"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"7"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s4">super</span><span class="s5"> </span><span class="s1">viewDidLoad</span><span class="s5">];</span></p><p class="p8"><span class="s5">    </span><span class="s4">self</span><span class="s5">.</span><span class="s1">view</span><span class="s5">.</span><span class="s1">backgroundColor</span><span class="s5"> = [</span><span class="s7">UIColor</span><span class="s5"> </span><span class="s13">blackColor</span><span class="s5">];</span></p><p class="p2"><span class="s1">    </span></p><p class="p5"><span class="s1">    </span><span class="s7">UIScrollView</span><span class="s1"> *scrollView = [[</span><span class="s7">UIScrollView</span><span class="s1"> </span><span class="s13">alloc</span><span class="s1">] </span><span class="s13">initWithFrame</span><span class="s1">:</span><span class="s13">CGRectMake</span><span class="s1">(</span><span class="s11">0</span><span class="s1">, </span><span class="s11">0</span><span class="s1">, </span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s14">Screen_Height</span><span class="s1">*</span><span class="s11">4</span><span class="s1">/</span><span class="s11">5</span><span class="s1">)];</span></p><p class="p5"><span class="s1">    [</span><span class="s4">self</span><span class="s1">.</span><span class="s15">view</span><span class="s1"> </span><span class="s13">addSubview</span><span class="s1">:scrollView];</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">contentOffset</span><span class="s1">=</span><span class="s13">CGPointMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p5"><span class="s1">    </span><span class="s4">for</span><span class="s1"> (</span><span class="s4">int</span><span class="s1"> i = </span><span class="s11">0</span><span class="s1">; i < </span><span class="s11">3</span><span class="s1">; i++) {</span></p><p class="p5"><span class="s1">        </span><span class="s6">ImageZoomView</span><span class="s1"> *imageView = [[</span><span class="s6">ImageZoomView</span><span class="s1"> </span><span class="s13">alloc</span><span class="s1">] </span><span class="s13">initWithFrame</span><span class="s1">:</span><span class="s13">CGRectMake</span><span class="s1">(</span><span class="s11">0</span><span class="s1">+</span><span class="s14">Screen_Width</span><span class="s1">*i, </span><span class="s11">0</span><span class="s1">, </span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s14">Screen_Height</span><span class="s1">*</span><span class="s11">4</span><span class="s1">/</span><span class="s11">5</span><span class="s1">)];</span></p><p class="p5"><span class="s1">        imageView.</span><span class="s10">image</span><span class="s1"> = [</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:i];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:imageView];</span></p><p class="p5"><span class="s1">        [scrollView </span><span class="s13">addSubview</span><span class="s1">:imageView];</span></p><p class="p5"><span class="s1">    }</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">pagingEnabled</span><span class="s1"> = </span><span class="s4">YES</span><span class="s1">;</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">contentSize</span><span class="s1"> = </span><span class="s13">CGSizeMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">*</span><span class="s11">3</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">delegate</span><span class="s1">=</span><span class="s4">self</span><span class="s1">;</span></p><p class="p2"><span class="s1">    </span></p><p class="p5"><span class="s1">}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p1"><span class="s1">//-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{</span></p><p class="p1"><span class="s1">//    [self.navigationController pushViewController:[MViewController new] animated:YES];</span></p><p class="p1"><span class="s1">//}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s1">- (</span><span class="s4">void</span><span class="s1">)didReceiveMemoryWarning {</span></p><p class="p7"><span class="s5">    [</span><span class="s4">super</span><span class="s5"> </span><span class="s1">didReceiveMemoryWarning</span><span class="s5">];</span></p><p class="p2"><span class="s1">    </span></p><p class="p1"><span class="s5">    </span><span class="s1">// Dispose of any resources that can be recreated.</span></p><p class="p5"><span class="s1">}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p1"><span class="s1">/*</span></p><p class="p1"><span class="s1">#pragma mark - Navigation</span></p><p class="p9"><span class="s1"></span>
</p><p class="p1"><span class="s1">// In a storyboard-based application, you will often want to do a little preparation before navigation</span></p><p class="p1"><span class="s1">- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {</span></p><p class="p1"><span class="s1">    // Get the new view controller using [segue destinationViewController].</span></p><p class="p1"><span class="s1">    // Pass the selected object to the new view controller.</span></p><p class="p1"><span class="s1">}</span></p><p class="p1"><span class="s1">*/</span></p><p class="p10"><span class="s16">//</span><span class="s1">相框移动</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)changScrollViewFrame{</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1">  *temp2=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">1</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp2.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp3=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">2</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp3.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s1">Screen_Width</span><span class="s5">*</span><span class="s11">2</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">,</span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">        </span><span class="s7">UIImageView</span><span class="s1"> *temp1= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp1.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s11">0</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">}</span></p><p class="p10"><span class="s16">//</span><span class="s1">相片移动</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)changImageFrame{</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp1= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp1.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">0</span><span class="s1">];</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1">  *temp2=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">1</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp2.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">1</span><span class="s1">];</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp3=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">2</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp3.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">2</span><span class="s1">];</span></p><p class="p2"><span class="s1">   </span></p><p class="p5"><span class="s1">}</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)scrollViewDidScroll:(</span><span class="s7">UIScrollView</span><span class="s1"> *)scrollView{</span></p><p class="p8"><span class="s5">    </span><span class="s1">CGFloat</span><span class="s5"> x=scrollView.</span><span class="s1">contentOffset</span><span class="s5">.</span><span class="s1">x</span><span class="s5">;</span></p><p class="p5"><span class="s1">    </span><span class="s4">if</span><span class="s1"> (x==</span><span class="s14">Screen_Width</span><span class="s1">*</span><span class="s11">2</span><span class="s1">) {</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">       </span><span class="s7">UIImageView</span><span class="s1"> *qq= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p7"><span class="s5">        [</span><span class="s10">imageViewArray</span><span class="s5"> </span><span class="s1">removeObjectAtIndex</span><span class="s5">:</span><span class="s11">0</span><span class="s5">];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:qq];</span></p><p class="p12"><span class="s5">        [</span><span class="s4">self</span><span class="s5"> </span><span class="s1">changScrollViewFrame</span><span class="s5">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">        </span><span class="s7">UIImage</span><span class="s1"> *ww=[</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p7"><span class="s5">        [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">removeObjectAtIndex</span><span class="s5">:</span><span class="s11">0</span><span class="s5">];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:ww];</span></p><p class="p12"><span class="s5">        [</span><span class="s4">self</span><span class="s5"> </span><span class="s1">changImageFrame</span><span class="s5">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">        scrollView.</span><span class="s15">contentOffset</span><span class="s1">=</span><span class="s13">CGPointMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s1">    }</span></p><p class="p5"><span class="s1">    </span><span class="s4">if</span><span class="s1"> (x==</span><span class="s14">Screen_Width</span><span class="s1">*</span><span class="s11">0</span><span class="s1">) {</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">            </span><span class="s7">UIImageView</span><span class="s1"> *qq= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">2</span><span class="s1">];</span></p><p class="p7"><span class="s5">            [</span><span class="s10">imageViewArray</span><span class="s5"> </span><span class="s1">removeObjectAtIndex</span><span class="s5">:</span><span class="s11">2</span><span class="s5">];</span></p><p class="p5"><span class="s1">            [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">insertObject</span><span class="s1">:qq </span><span class="s13">atIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p12"><span class="s5">            [</span><span class="s4">self</span><span class="s5"> </span><span class="s1">changScrollViewFrame</span><span class="s5">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">            </span><span class="s7">UIImage</span><span class="s1"> *ww=[</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s10">scrollArray</span><span class="s1">.</span><span class="s15">count</span><span class="s1">-</span><span class="s11">1</span><span class="s1">];</span></p><p class="p13"><span class="s5">            [</span><span class="s1">scrollArray</span><span class="s5"> </span><span class="s13">removeObjectAtIndex</span><span class="s5">:</span><span class="s1">scrollArray</span><span class="s5">.</span><span class="s15">count</span><span class="s5">-</span><span class="s11">1</span><span class="s5">];</span></p><p class="p5"><span class="s1">            [</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">insertObject</span><span class="s1">:ww </span><span class="s13">atIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p5"><span class="s1">            [</span><span class="s4">self</span><span class="s1"> </span><span class="s17">changImageFrame</span><span class="s1">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">            scrollView.</span><span class="s15">contentOffset</span><span class="s1">=</span><span class="s13">CGPointMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p2"><span class="s1"></span>
</p><p class="p2"><span class="s1">        </span></p><p class="p2"><span class="s1">    </span></p><p class="p5"><span class="s1">}</span></p><p class="p5"><span class="s1">}</span></p><p class="p6"><span class="s1">@end</span></p><p class="p1"><span class="s1">//</span></p><p class="p1"><span class="s1">//  KViewController.m</span></p><p class="p1"><span class="s1">//  UI_10_01</span></p><p class="p1"><span class="s1">//</span></p><p class="p1"><span class="s1">//  Created by vincent on 16/1/5.</span></p><p class="p1"><span class="s1">//  Copyright © 2016</span><span class="s2">年</span><span class="s1"> vincent. All rights reserved.</span></p><p class="p1"><span class="s1">//</span></p><p class="p2"><span class="s1"></span>
</p><p class="p3"><span class="s3">#import </span><span class="s1">"KViewController.h"</span></p><p class="p3"><span class="s3">#import </span><span class="s1">"ImageZoomView.h"</span></p><p class="p3"><span class="s3">#import </span><span class="s1">"MViewController.h"</span></p><p class="p4"><span class="s4">@interface</span><span class="s5"> </span><span class="s6">KViewController</span><span class="s5"> ()<</span><span class="s1">UIScrollViewDelegate</span><span class="s5">></span></p><p class="p5"><span class="s1">{</span></p><p class="p5"><span class="s1">    </span><span class="s7">NSMutableArray</span><span class="s1"> *scrollArray;  </span><span class="s8">//</span><span class="s9">相片数组</span></p><p class="p5"><span class="s1">    </span><span class="s7">NSMutableArray</span><span class="s1"> *imageViewArray; </span><span class="s8">//</span><span class="s9">相框数组</span></p><p class="p5"><span class="s1">}</span></p><p class="p6"><span class="s1">@end</span></p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s4">@implementation</span><span class="s1"> KViewController</span></p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s1">- (</span><span class="s4">void</span><span class="s1">)viewDidLoad {</span></p><p class="p7"><span class="s5">    </span><span class="s10">scrollArray</span><span class="s5">=[</span><span class="s7">NSMutableArray</span><span class="s5"> </span><span class="s1">arrayWithCapacity</span><span class="s5">:</span><span class="s11">20</span><span class="s5">];</span></p><p class="p7"><span class="s5">    </span><span class="s10">imageViewArray</span><span class="s5"> =[</span><span class="s7">NSMutableArray</span><span class="s5"> </span><span class="s1">arrayWithCapacity</span><span class="s5">:</span><span class="s11">20</span><span class="s5">];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"1"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"2"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"3"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"4"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"5"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"6"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">addObject</span><span class="s5">:[</span><span class="s7">UIImage</span><span class="s5"> </span><span class="s1">imageNamed</span><span class="s5">:</span><span class="s12">@"7"</span><span class="s5">]];</span></p><p class="p7"><span class="s5">    [</span><span class="s4">super</span><span class="s5"> </span><span class="s1">viewDidLoad</span><span class="s5">];</span></p><p class="p8"><span class="s5">    </span><span class="s4">self</span><span class="s5">.</span><span class="s1">view</span><span class="s5">.</span><span class="s1">backgroundColor</span><span class="s5"> = [</span><span class="s7">UIColor</span><span class="s5"> </span><span class="s13">blackColor</span><span class="s5">];</span></p><p class="p2"><span class="s1">    </span></p><p class="p5"><span class="s1">    </span><span class="s7">UIScrollView</span><span class="s1"> *scrollView = [[</span><span class="s7">UIScrollView</span><span class="s1"> </span><span class="s13">alloc</span><span class="s1">] </span><span class="s13">initWithFrame</span><span class="s1">:</span><span class="s13">CGRectMake</span><span class="s1">(</span><span class="s11">0</span><span class="s1">, </span><span class="s11">0</span><span class="s1">, </span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s14">Screen_Height</span><span class="s1">*</span><span class="s11">4</span><span class="s1">/</span><span class="s11">5</span><span class="s1">)];</span></p><p class="p5"><span class="s1">    [</span><span class="s4">self</span><span class="s1">.</span><span class="s15">view</span><span class="s1"> </span><span class="s13">addSubview</span><span class="s1">:scrollView];</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">contentOffset</span><span class="s1">=</span><span class="s13">CGPointMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p5"><span class="s1">    </span><span class="s4">for</span><span class="s1"> (</span><span class="s4">int</span><span class="s1"> i = </span><span class="s11">0</span><span class="s1">; i < </span><span class="s11">3</span><span class="s1">; i++) {</span></p><p class="p5"><span class="s1">        </span><span class="s6">ImageZoomView</span><span class="s1"> *imageView = [[</span><span class="s6">ImageZoomView</span><span class="s1"> </span><span class="s13">alloc</span><span class="s1">] </span><span class="s13">initWithFrame</span><span class="s1">:</span><span class="s13">CGRectMake</span><span class="s1">(</span><span class="s11">0</span><span class="s1">+</span><span class="s14">Screen_Width</span><span class="s1">*i, </span><span class="s11">0</span><span class="s1">, </span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s14">Screen_Height</span><span class="s1">*</span><span class="s11">4</span><span class="s1">/</span><span class="s11">5</span><span class="s1">)];</span></p><p class="p5"><span class="s1">        imageView.</span><span class="s10">image</span><span class="s1"> = [</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:i];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:imageView];</span></p><p class="p5"><span class="s1">        [scrollView </span><span class="s13">addSubview</span><span class="s1">:imageView];</span></p><p class="p5"><span class="s1">    }</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">pagingEnabled</span><span class="s1"> = </span><span class="s4">YES</span><span class="s1">;</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">contentSize</span><span class="s1"> = </span><span class="s13">CGSizeMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">*</span><span class="s11">3</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p5"><span class="s1">    scrollView.</span><span class="s15">delegate</span><span class="s1">=</span><span class="s4">self</span><span class="s1">;</span></p><p class="p2"><span class="s1">    </span></p><p class="p5"><span class="s1">}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p1"><span class="s1">//-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{</span></p><p class="p1"><span class="s1">//    [self.navigationController pushViewController:[MViewController new] animated:YES];</span></p><p class="p1"><span class="s1">//}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s1">- (</span><span class="s4">void</span><span class="s1">)didReceiveMemoryWarning {</span></p><p class="p7"><span class="s5">    [</span><span class="s4">super</span><span class="s5"> </span><span class="s1">didReceiveMemoryWarning</span><span class="s5">];</span></p><p class="p2"><span class="s1">    </span></p><p class="p1"><span class="s5">    </span><span class="s1">// Dispose of any resources that can be recreated.</span></p><p class="p5"><span class="s1">}</span></p><p class="p2"><span class="s1"></span>
</p><p class="p1"><span class="s1">/*</span></p><p class="p1"><span class="s1">#pragma mark - Navigation</span></p><p class="p9"><span class="s1"></span>
</p><p class="p1"><span class="s1">// In a storyboard-based application, you will often want to do a little preparation before navigation</span></p><p class="p1"><span class="s1">- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {</span></p><p class="p1"><span class="s1">    // Get the new view controller using [segue destinationViewController].</span></p><p class="p1"><span class="s1">    // Pass the selected object to the new view controller.</span></p><p class="p1"><span class="s1">}</span></p><p class="p1"><span class="s1">*/</span></p><p class="p10"><span class="s16">//</span><span class="s1">相框移动</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)changScrollViewFrame{</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1">  *temp2=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">1</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp2.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp3=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">2</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp3.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s1">Screen_Width</span><span class="s5">*</span><span class="s11">2</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">,</span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">        </span><span class="s7">UIImageView</span><span class="s1"> *temp1= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p11"><span class="s5">    temp1.</span><span class="s15">frame</span><span class="s5">=</span><span class="s13">CGRectMake</span><span class="s5">(</span><span class="s11">0</span><span class="s5">, </span><span class="s11">0</span><span class="s5">, </span><span class="s1">Screen_Width</span><span class="s5">, </span><span class="s1">Screen_Height</span><span class="s5">*</span><span class="s11">4</span><span class="s5">/</span><span class="s11">5</span><span class="s5">);</span></p><p class="p5"><span class="s1">}</span></p><p class="p10"><span class="s16">//</span><span class="s1">相片移动</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)changImageFrame{</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp1= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp1.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">0</span><span class="s1">];</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1">  *temp2=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">1</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp2.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">1</span><span class="s1">];</span></p><p class="p5"><span class="s1">    </span><span class="s7">UIImageView</span><span class="s1"> *temp3=[</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">2</span><span class="s1">];</span></p><p class="p5"><span class="s1">    temp3.</span><span class="s15">image</span><span class="s1">=</span><span class="s10">scrollArray</span><span class="s1">[</span><span class="s11">2</span><span class="s1">];</span></p><p class="p2"><span class="s1">   </span></p><p class="p5"><span class="s1">}</span></p><p class="p5"><span class="s1">-(</span><span class="s4">void</span><span class="s1">)scrollViewDidScroll:(</span><span class="s7">UIScrollView</span><span class="s1"> *)scrollView{</span></p><p class="p8"><span class="s5">    </span><span class="s1">CGFloat</span><span class="s5"> x=scrollView.</span><span class="s1">contentOffset</span><span class="s5">.</span><span class="s1">x</span><span class="s5">;</span></p><p class="p5"><span class="s1">    </span><span class="s4">if</span><span class="s1"> (x==</span><span class="s14">Screen_Width</span><span class="s1">*</span><span class="s11">2</span><span class="s1">) {</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">       </span><span class="s7">UIImageView</span><span class="s1"> *qq= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p7"><span class="s5">        [</span><span class="s10">imageViewArray</span><span class="s5"> </span><span class="s1">removeObjectAtIndex</span><span class="s5">:</span><span class="s11">0</span><span class="s5">];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:qq];</span></p><p class="p12"><span class="s5">        [</span><span class="s4">self</span><span class="s5"> </span><span class="s1">changScrollViewFrame</span><span class="s5">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">        </span><span class="s7">UIImage</span><span class="s1"> *ww=[</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p7"><span class="s5">        [</span><span class="s10">scrollArray</span><span class="s5"> </span><span class="s1">removeObjectAtIndex</span><span class="s5">:</span><span class="s11">0</span><span class="s5">];</span></p><p class="p5"><span class="s1">        [</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">addObject</span><span class="s1">:ww];</span></p><p class="p12"><span class="s5">        [</span><span class="s4">self</span><span class="s5"> </span><span class="s1">changImageFrame</span><span class="s5">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">        scrollView.</span><span class="s15">contentOffset</span><span class="s1">=</span><span class="s13">CGPointMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p2"><span class="s1"></span>
</p><p class="p5"><span class="s1">    }</span></p><p class="p5"><span class="s1">    </span><span class="s4">if</span><span class="s1"> (x==</span><span class="s14">Screen_Width</span><span class="s1">*</span><span class="s11">0</span><span class="s1">) {</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">            </span><span class="s7">UIImageView</span><span class="s1"> *qq= [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s11">2</span><span class="s1">];</span></p><p class="p7"><span class="s5">            [</span><span class="s10">imageViewArray</span><span class="s5"> </span><span class="s1">removeObjectAtIndex</span><span class="s5">:</span><span class="s11">2</span><span class="s5">];</span></p><p class="p5"><span class="s1">            [</span><span class="s10">imageViewArray</span><span class="s1"> </span><span class="s13">insertObject</span><span class="s1">:qq </span><span class="s13">atIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p12"><span class="s5">            [</span><span class="s4">self</span><span class="s5"> </span><span class="s1">changScrollViewFrame</span><span class="s5">];</span></p><p class="p2"><span class="s1">        </span></p><p class="p5"><span class="s1">            </span><span class="s7">UIImage</span><span class="s1"> *ww=[</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">objectAtIndex</span><span class="s1">:</span><span class="s10">scrollArray</span><span class="s1">.</span><span class="s15">count</span><span class="s1">-</span><span class="s11">1</span><span class="s1">];</span></p><p class="p13"><span class="s5">            [</span><span class="s1">scrollArray</span><span class="s5"> </span><span class="s13">removeObjectAtIndex</span><span class="s5">:</span><span class="s1">scrollArray</span><span class="s5">.</span><span class="s15">count</span><span class="s5">-</span><span class="s11">1</span><span class="s5">];</span></p><p class="p5"><span class="s1">            [</span><span class="s10">scrollArray</span><span class="s1"> </span><span class="s13">insertObject</span><span class="s1">:ww </span><span class="s13">atIndex</span><span class="s1">:</span><span class="s11">0</span><span class="s1">];</span></p><p class="p5"><span class="s1">            [</span><span class="s4">self</span><span class="s1"> </span><span class="s17">changImageFrame</span><span class="s1">];</span></p><p class="p2"><span class="s1">        //永远看到的是第二张图片</span></p><p class="p5"><span class="s1">            scrollView.</span><span class="s15">contentOffset</span><span class="s1">=</span><span class="s13">CGPointMake</span><span class="s1">(</span><span class="s14">Screen_Width</span><span class="s1">, </span><span class="s11">0</span><span class="s1">);</span></p><p class="p2"><span class="s1"></span>
</p><p class="p2"><span class="s1">        </span></p><p class="p2"><span class="s1">    </span></p><p class="p5"><span class="s1">}</span></p><p class="p5"><span class="s1">}</span></p><p class="p6"><span class="s1">@end</span></p>

        scrollView.contentOffset=CGPointMake(Screen_Width, 0);

    }

    if (x==Screen_Width*0) {

        

            UIImageView *qq= [imageViewArray objectAtIndex:2];

            [imageViewArray removeObjectAtIndex:2];

            [imageViewArray insertObject:qq atIndex:0];

            [self changScrollViewFrame];

        

            UIImage *ww=[scrollArray objectAtIndex:scrollArray.count-1];

            [scrollArray removeObjectAtIndex:scrollArray.count-1];

            [scrollArray insertObject:ww atIndex:0];

            [self changImageFrame];

         //偏移量永远是第二张图片

            scrollView.contentOffset=CGPointMake(Screen_Width, 0);

        

    

}

}

@end

scrollView.contentOffset=CGPointMake(Screen_Width, 0); } if (x==Screen_Width*0) { UIImageView *qq= [imageViewArray objectAtIndex:2]; [imageViewArray removeObjectAtIndex:2]; [imageViewArray insertObject:qq atIndex:0]; [self changScrollViewFrame]; UIImage *ww=[scrollArray objectAtIndex:scrollArray.count-1]; [scrollArray removeObjectAtIndex:scrollArray.count-1]; [scrollArray insertObject:ww atIndex:0]; [self changImageFrame]; //偏移量永远是第二张图片 scrollView.contentOffset=CGPointMake(Screen_Width, 0); } } @end


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值