Iphone 不同子视图中的UILabel

Iphone 不同子视图中的UILabel,iphone,objective-c,uiscrollview,nsarray,uilabel,Iphone,Objective C,Uiscrollview,Nsarray,Uilabel,我正在创建我的第一个应用程序。这将是一个产品目录,您可以滚动浏览。 我创建了一个宽度为960(320*3)的UIScrollView,并添加了一个UIPageControl。在里面,我添加了3个不同的视图,每个视图代表我的一个产品,以及我需要的所有信息——名称、图像、描述、价格等 我可以看到视图移动,因此我用UILabel类和UIImageView设置了第一个产品。我想知道在用户切换到下一个视图时,是否可以使用NSArray并在下一个视图中设置UILabel的text属性和imageNamed

我正在创建我的第一个应用程序。这将是一个产品目录,您可以滚动浏览。 我创建了一个宽度为960(320*3)的
UIScrollView
,并添加了一个
UIPageControl
。在里面,我添加了3个不同的视图,每个视图代表我的一个产品,以及我需要的所有信息——名称、图像、描述、价格等

我可以看到视图移动,因此我用
UILabel
类和
UIImageView
设置了第一个产品。我想知道在用户切换到下一个视图时,是否可以使用
NSArray
并在下一个视图中设置
UILabel
text
属性和
imageNamed

我的问题是每个视图都有不同的
UILabel
元素


谢谢你的帮助,非常感谢

是的,您可以使用NSArray存储每个视图的数据。我建议首先创建一个具有labelText和imageName属性的简单对象

然后可以创建自定义对象的NSArray,如下所示:

MyObject obj1 = [MyObject new];
obj1.labelText = @"My Text 1";
obj1.imageName = @"My Image 1";

//Other objects..

then

NSArray *myArray = [[NSArray alloc] initWithObjects: obj1, obj2, obj3, nil];
然后,在切换页面时,只需执行以下操作:

MyObject *myPageInfo = [myArray objectAtIndex:pageNumber];
myLabel.text = myPageInfo.labelText;
mylabel.imageName = myPageInfo.imageName;

希望这能有所帮助。

我知道这不是您的问题,但是如果您使用的图像不在应用程序包中,您不能使用
+imageNamed:
类方法。您能更具体地说明您的问题吗?我很难理解你在找什么。如果您的问题是“我可以使用NSArray来存储我在视图上显示的信息吗?”答案当然是您可以。但我怀疑这是你想要的。我有不同的子视图,我想用NSArray显示其中的信息。如何将不同子视图中的标签链接到同一个NSArray?