iphone - 在另一个循环中循环

标签 iphone objective-c ios xcode

我有这个代码:

//Value of userCount is 25
auxCount = 0;
for (int y_axis=0; y_axis<=8; y_axis++)  //ROWS
    {
        for (int x_axis=0; x_axis<=2; x_axis++) //COLUMNS
        {
            if (auxCount<userCount) {     
                NSLog(@"auxCount: %i\n",auxCount);
                NSLog(@"userCount: %i\n\n",userCount);
                UIButton *btn=       [[UIButton alloc] initWithFrame:CGRectMake(16+100*x_axis,115.0*y_axis,88.0 ,88.0)];
                UILabel *userLabel = [[UILabel alloc] initWithFrame:CGRectMake(16+100*x_axis,90+115.0*y_axis, 88.0, 15.0)];
                userLabel.textAlignment = UITextAlignmentCenter;
                userLabel.text = mensaje;

                btn.backgroundColor=[UIColor groupTableViewBackgroundColor];
                [scrollViewUsers addSubview:btn];
                [scrollViewUsers addSubview:userLabel];

                auxCount++;

            }
        }
    }

这样我想要一个 3 列 X 行的矩阵,但只显示 3 行,第三行只显示 1 个按钮。并且在调试区域出现: 辅助计数:0 用户数:25

辅助计数:4 用户数:25

辅助计数:8 用户数:25

辅助计数:12 用户数:25

辅助计数:16 用户数:25

辅助计数:20 用户数:25

辅助计数:24 用户数:25

auxCount 以 4 乘 4 递增。我认为这是因为 if 指令仅由第一个 for 循环执行,但我不知道为什么。 拜托,我需要你的帮助。

ps:抱歉我的英语!!

最佳答案

只要尝试一下这个 for 循环,就像我在我的应用程序中使用的那样,它对我有用。

根据列数和总计数找出行数

int r;
float rem = [dao libraryCount] % kCol;
if(rem == 0.0f)
    r = floor([dao libraryCount]/kD);
else
    r = ceil([dao libraryCount]/kD);

这里 r 是数字,如果行 [dao libraryCount 是项目总数,kCol 是固定的列数,它是3 和 kDkCol 相同,唯一不同的是它是 float 类型,即您的情况下为 3.0

然后使用如下的for循环

for (int row = 0; row < r; ++row)
{
    for (int col = 0; col < kCol; ++col)
    {
       //Your Code to display or any thing
    }
}

对于 auxCount 使用此代码

int index = (row * kCol) + col;
        if(index < [dao libraryCount])
        {
            //Your Code to display or any thing
        }

将其放在两个 for 循环中,而不是使用 ++ 只需更改两个 for 循环并用适当的变量替换 if 条件

享受编码的乐趣:) 祝你好运

需要任何帮助,请评论我,我很乐意帮助您

关于iphone - 在另一个循环中循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10599416/

相关文章:

ios - UIActivityViewController Facebook 分享文字

iphone - ios国际化字体分配

objective-c - 显示 NSMutableAttributedString

iOS 9.2.1,取消通知不起作用

IOS Facebook SDK 邀请 缺少应用程序链接 URL

ios - 无法以编程方式将 View 添加到 Storyboard 中的现有 uiview

iphone - 如何在App Store中销售多个共享变量的应用程序?

javascript - iPhone 键盘在 contenteditable 上输入时会隐藏文本

iphone - 在 iPhone 的默认照片应用程序的 UIActionSheet 中显示我的应用程序

ios - 如何在界面生成器中从 Storyboard 场景实例化的 View Controller 上调用自定义初始化?