滚动视图了解

时间:2012-03-13 12:45:29

标签: ios iphone objective-c ios4 uiscrollview

我有关于编写滚动视图的问题。我有一个scrollview,我需要在每次用户scrols时更改此scrollView中的图像和标签。但是,我不需要更改此视图中的背景或任何其他内容。因此,当用户滚动时,是否可以简单地更改imageview图像和标签文本?

我目前已经写过这个但是这总是会显示第二张图片。我希望在视图滚动时显示不同的图像,但保持其他方面相同。我必须有多个观点吗?

 if (self.pageControl.currentPage = 1)
    [self.minkyImageView setImage:[UIImage imageNamed:@"monkey_1.png"]];  
 if (self.pageControl.currentPage = 2)
    [self.minkyImageView setImage:[UIImage imageNamed:@"Shape1.png"]];

紧急谢谢。我从苹果文档中读到,最好的方法是有三种观点并不断变化。但是我也不知道我会怎么做。不知道如何更改图像。

1 个答案:

答案 0 :(得分:1)

正如mattjgalloway所说,你实际上是在分配currentPage值而不是比较。这就是您的代码最终归结为:

  • 将currentPage指定为1(这将始终评估为true)
  • 显示monkey_1.png
  • 现在,将currentPage分配给2(这将始终评估为true)
  • 显示Shape1.png

所以,你看,你将永远看到Shape1.png。将您的代码更改为:

switch (self.pageControl.currentPage)
{
   case 1:
      [self.minkyImageView setImage:[UIImage imageNamed:@"monkey_1.png"]]; 
      break;
   case 2:
      [self.minkyImageView setImage:[UIImage imageNamed:@"Shape1.png"]];
      break;
   default:
      break;
}