iphone - 如何在 'for' 循环中添加 subview

标签 iphone objective-c ios cocoa-touch ipad

我只是想为数组中的每个对象添加一个 UIView,而不是在屏幕上显示超过 3 个,但 View 彼此不相邻。每个 View 之间有很大的差距(一个 View 宽度)。这是我得到的;

int numberOfUsersOnScreen;

if (array.count < 3) {
    numberOfViewsOnScreen = array.count;
}else{
    numberOfUsersOnScreen = 3;
}

double width = (self.scrollView.frame.size.width/numberOfViewsOnScreen);
CGRect r = CGRectMake(0, 0, width, 1200);
[self.usersScrollView setContentSize:CGSizeMake(width*array.count, 0)];

for (int i = 0; i < users.count; i++) {  
       r.origin.x = width * i;
       UIView * view = [[UIView alloc] initFrame:r];
       [self.scrollView addSubview:view];
}    

The Orange is the scrollView underneath

最佳答案

试试这个:

int xPosition = 0;
for (int i = 0; i < users.count; i++) {  
   UIView * view = [[UIView alloc] initFrame:CGRectMake(xPosition, 0, width, 1200)];
   [self.scrollView addSubview:view];
   xPosition += width;
}    

关于iphone - 如何在 'for' 循环中添加 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9183973/

相关文章:

iphone - 如何修复 iPhone 应用程序中的多个音频流造成的失真?

ios 将 View 保留在内存中

iphone - initWithFrame 与 initWithStyle

objective-c - 如何在不使用属性或 ivar 的情况下引用对象

iphone - iPhone应用程序崩溃

ios - 如何防止 UITextView 文本在打字时移动到顶部?

objective-c - 优胜美地 : NSSavePanel: __NSArrayI objectAtIndex:]: index 0 beyond bounds for empty array

iOS UIWebView 中的 Javascript 确认对话框卡住应用程序

iPhone OpenCV 人脸检测

ios - 使用远程网页初始化 iPhone 应用程序