您的位置:首页 > 产品设计 > UI/UE

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

2016-01-06 10:29 447 查看
分别创建若干张图片  这里我创建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, Sc
4000
reen_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><
1c463
;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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息