【问题标题】:UILabel in different subviews不同子视图中的UILabel
【发布时间】:2012-07-17 11:12:46
【问题描述】:

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

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

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

感谢您的帮助,非常感谢!

【问题讨论】:

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

标签: iphone objective-c uiscrollview nsarray uilabel


【解决方案1】:

是的,您可以使用 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;

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多