1

我在情节提要中有一个 UIViewController,其中包含一个滚动视图。

我想在上面放两个 UIImageViews 和一些 UILabels。

我的想法是:创建一个 .xib 文件。在上面放一个 UIView,然后在这个 UIView 上设置我的 UIImageview 和标签。

最后将作为 .xib 文件的 UIView 添加到我的 UIScrollView 中,如下所示:

 NSArray *views = [[NSBundle mainBundle] loadNibNamed:@"OfferView" owner:self options:nil];
UIView *newPageView = [views lastObject];
self.newPageView.contentMode = UIViewContentModeScaleAspectFill;
newPageView.frame = frame;
[self.scrollView addSubview:newPageView];
[self.pageViews replaceObjectAtIndex:page withObject:newPageView];

现在我想在我的 UIViewController 中以编程方式为 UIView 上的控件设置文本和图像。我试试这个,但没有奏效:

OfferUIView *offer2 = [[OfferUIView alloc] init];;
offer2.labelCompany.text = @"some text";

我也在OfferUIViewViewController 的接口中定义然后同步,但它也没有帮助:

@property (nonatomic, assign) OfferUIView *offerView;

你能帮助我吗?

4

3 回答 3

1

OfferView当您将笔尖加载到您的offerView财产时,为您设置指针

NSArray *views = [[NSBundle mainBundle] loadNibNamed:@"OfferView" owner:self options:nil];
self.offerView = [views lastObject];
self.offerView.contentMode = UIViewContentModeScaleAspectFill;
self.offerView.frame = frame;
[self.scrollView addSubview:self.offerView];
[self.pageViews replaceObjectAtIndex:page withObject:self.offerView];

当你想改变它时:

self.offerView.labelCompany.text = @"some text";
于 2012-09-26T11:24:41.470 回答
0

OfferUiView 必须“ initWithFrame ”,因为它是任何“UIView”类视图的必需方法或为此视图设置一个框架。因为你有子类 UIView 包括 initWithFrame 作为它的构造函数此外,因为你已经以编程方式分配了 OfferUIView,你必须添加此视图到您的当前视图,即 [self.view addSubView:offer2];

于 2012-09-26T11:25:22.960 回答
0

您可以为 设置唯一标签,tag并且可以像这样在 parentView 中搜索标签:

UILabel *theLabel = (UILabel *)[parentView viewWithTag: 10321];
于 2012-09-26T12:14:49.420 回答