我认为这是一个新手问题...... 我已经创建了一个动态滚动视图,其中图像和标签以编程方式添加为子视图。问题是我只添加了作为子视图添加的最后一个。 此外,当我读到“addSubview:”时,它说“将视图添加到接收者的子视图列表的末尾。”这是否意味着只有最后添加的子视图才会显示?在这种情况下,我如何使两者都可见?
提前致谢, 汤姆
CODE:
for(int i = 0; i < [famorableArray count]; i++){
UIButton *famorableButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[famorableButton setFrame:CGRectMake(0.0f, 5.0f, 57.0f, 57.0f)];
[famorableButton setImage:personLogo forState:UIControlStateNormal];
NSString *famString = [NSString stringWithFormat:@"%@", [[[famorableArray objectAtIndex:i] substringFromIndex:8] capitalizedString]];
NSLog(@"%@", famString);
UILabel *famLabel = [[UILabel alloc] initWithFrame:CGRectZero];
famLabel.text = famString;
NSLog(@"Test2 %@", famLabel.text);
// Move the buttons position in the x-demension (horizontal).
CGRect btnRect = famorableButton.frame;
btnRect.origin.x = totalButtonWidth;
[famorableButton setFrame:btnRect];
CGRect labelRect = famLabel.frame;
labelRect.origin.x = totalButtonWidth + 28.5f;
[famLabel setFrame:btnRect];
// Add the button to the scrollview
[famScroll addSubview:famLabel];
[famScroll addSubview:famorableButton];
// Add the width of the button to the total width.
totalButtonWidth += famorableButton.frame.size.width + 30;
}
[famScroll setContentSize:CGSizeMake(totalButtonWidth, 79.0f)];
答案 0 :(得分:1)
对于每个添加的子视图,您必须设置frame
属性。框架是视图在超视图中的位置。 “添加到子视图列表”并不意味着任何自动布局。因此,我假设所有子视图都可见但重叠。
答案 1 :(得分:0)
我的不好......复制粘贴后编辑失败。意外地使用btnRect作为标签的框架。非常感谢你的努力@Martin:)