在 iPhone 中使用 UIScrollView 和 ImageView 滚动图像
Posted
技术标签:
【中文标题】在 iPhone 中使用 UIScrollView 和 ImageView 滚动图像【英文标题】:Scrolling of Images using UIScrollView and ImageView in iPhone 【发布时间】:2013-01-25 06:52:51 【问题描述】:我正在使用其中一个应用程序,在该应用程序中,只有一个视图上有图像。我希望能够向左或向右滑动,让第一个图像离开视图,第二个图像进入。图像是不同的,我希望它看起来像它们是连接的。我在 xib 文件上使用了 UIScrollView 和 UIImageView 下面是我在视图中使用的代码确实加载方法。当我运行应用程序时,滚动视图中只显示最后一张图片。
NSMutableArray *images = [[NSMutableArray alloc] initWithObjects:[UIImage imageNamed:@"iPad.png"],[UIImage imageNamed:@"iPadMini.png"],[UIImage imageNamed:@"iPhone4.png"],[UIImage imageNamed:@"iPhone5.png"], nil];
for (int i = 0; i < [images count]; i++)
CGRect frame;
frame.origin.x = self.scrollView.frame.size.width * i;
frame.origin.y = 0;
frame.size = self.scrollView.frame.size;
imgView.frame = frame;
imgView.image = [images objectAtIndex:i];
[scrollView addSubview:imgView];
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * images.count, self.scrollView.frame.size.height);
【问题讨论】:
***.com/questions/3430267/… 【参考方案1】:试试这段代码...
NSMutableArray *images = [[NSMutableArray alloc] initWithObjects:[UIImage imageNamed:@"iPad.png"],[UIImage imageNamed:@"iPadMini.png"],[UIImage imageNamed:@"iPhone4.png"],[UIImage imageNamed:@"iPhone5.png"], nil];
for (int i = 0; i < [images count]; i++)
UIImageView *imgView = [[UIImageView alloc] init];
imgView.frame = CGRectMake(100*i, 0, 100, self.scrollView.frame.size.height);
imgView.image = [images objectAtIndex:i];
[scrollView addSubview:imgView];
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * images.count, self.scrollView.frame.size.height);
【讨论】:
【参考方案2】:试试这个..
NSMutableArray *images = [[NSMutableArray alloc] initWithObjects:[UIImage imageNamed:@"iPad.png"],[UIImage imageNamed:@"iPadMini.png"],[UIImage imageNamed:@"iPhone4.png"],[UIImage imageNamed:@"iPhone5.png"], nil];
for (int i = 0; i < [images count]; i++)
UIImageView *imgView = [[UIImageView alloc]init];
CGRect frame;
frame.origin.x = self.scrollView.frame.size.width * i;
frame.origin.y = 0;
frame.size = self.scrollView.frame.size;
imgView.frame = frame;
imgView.image = [images objectAtIndex:i];
[scrollView addSubview:imgView];
self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * images.count, self.scrollView.frame.size.height);
希望对你有帮助...
【讨论】:
以上是关于在 iPhone 中使用 UIScrollView 和 ImageView 滚动图像的主要内容,如果未能解决你的问题,请参考以下文章
在 iphone 中使用 UIScrollView 滚动图像(第 2 部分)
如何使用主 iPhone 视图之外的 UI 元素在 Interface Builder 中设置 UIScrollView?
如何在 Iphone 中单击 UIButton 时设置 UiScrollView Frame?
如何在 iPhone SDK 中使用 Objective C 实现 UIViewAutoresizingFlexibleHeight 到 UIScrollView?