ios - UIPickerView 选择更新 UITextFields 的 NSArray

标签 ios nsmutablearray nsarray uipickerview

我创建了一个包含动态数量的 UIView 的 UIScrollView。每个 UIView 内部都有一个动态数量的 UItextField

View 本身看起来像这样

enter image description here

这个白框是 UIView,黑框是 UITextfield。

我有一个方法可以将这些 UITextfield 放入数组的数组中。因此,您有一个 UIView 数组,每个数组中都有一个 UITextfield 数组。

该代码如下所示。

for(int i = 0; i< viewcount; i++) {
        color = color + 20;
        NSLog(@"%f", color);
        CGFloat y = i * 91;

        UIScrollView *axisContainerScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0.0, y,self.view.frame.size.width, 90.0)];
        axisContainerScrollView.contentSize = CGSizeMake(600.0, 90.0);
        axisContainerScrollView.backgroundColor = [UIColor whiteColor];
        [htmlContainerScrollView addSubview:axisContainerScrollView];

//        UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, y,self.view.frame.size.width, 90.0)];
        UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 640.0, 90.0)];
        view.backgroundColor = [UIColor colorWithRed:0/255.0 green:0/255.0 blue:0/255.0 alpha:(1.0/i)];;
        [axisContainerScrollView addSubview:view];

        int cutCount = [cutsString integerValue];
        int positions = (view.frame.size.width/cutCount);

        for (int i = 0; i < cutCount; i++) {
            //first one
            UITextField *cutField = [[UITextField alloc] initWithFrame:CGRectMake(((positions*i)-(20/2)+(positions/2)), 25, 20, 20)];
            cutField.textColor = [UIColor colorWithRed:0/256.0 green:84/256.0 blue:129/256.0 alpha:1.0];
            cutField.font = [UIFont fontWithName:@"Helvetica-Bold" size:25];
            cutField.backgroundColor=[UIColor whiteColor];
            [view addSubview:cutField];

            [columnArrayOfTextFields addObject:cutField]; // array of textfields
        }
        [rowArrayOfTextFields addObject:columnArrayOfTextFields]; // array of arrays

    }

我需要帮助的是如何逐步执行每个 UITextField 并从 UIPickerView 输入值。因此,当您选择值时,您会从左到右填充每个 UITextField,并向下遍历每个 UItextField

我有一个用于 UIPickerView 的手势识别器,它调用这样的方法

UITapGestureRecognizer *singleFingerTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(pickerTap:)];

我认为 NSArrays 的 NSArray 是一个好的开始,但我只是不确定如何从这里开始。

最佳答案

如果我没理解错的话,你可以使用 UIViewtag 属性

我通常做的(因为我自己遇到了这个问题)是:

一个。您有已知数量的元素,并将标签从 1 分配到 n

B。如果您可以添加/删除/或者您只有动态数量的元素,请将质数乘以 123 等。

  • 例如,在 1 行,您使用素数 3。所以你的文本字段 将具有 369121518
  • 然后在第二行使用7。所以你会有你的文本字段 标记为 714212835 43
  • 对于 3 行,您使用 11
  • 对于 4 行,您使用 13 等等......

有很多方法可以完成,这些只是我的想法或实际使用的方法,如果我没有正确理解您想要什么,请随时告诉我。

关于ios - UIPickerView 选择更新 UITextFields 的 NSArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19940609/

相关文章:

javascript - React-Native 渲染多个图像

ios - 基于引用子文件夹创建唯一数组

ios - NSArray 从其他数组添加对象

ios - 快速从对象数组中删除重复项

objective-c - 如何将 JSON 数组转换为 NSArray

ios - iphone i1i8n - 添加了 "en"本地化,在加拿大商店中不是英语

ios - 在 UILabel 中显示核心数据计数,不断更新

iphone - 索引处的对象更新整个 nsmutablearray

iphone - 如何从 web 服务 iphone 下载大文件?

iphone - 这段代码有什么错误?