【问题标题】:How to get value of NSTextField dynamic add to NSMutableArray?如何获取 NSTextField 动态添加到 NSMutableArray 的值?
【发布时间】:2013-07-23 08:38:13
【问题描述】:

我有一个包含 30 个项目 (1,2,...,30) 的组合框。我想在 Combobox 中选择项目,创建动态 NSTextField 在 Combobox 中选择的相同项目。然后用户将文本输入到 NSTextField,然后单击按钮将每个 NSTextField 的所有文本添加到 NSMutableArray。 我使用下面的代码从 NSTextField 获取文本并将其添加到 Array 但它只能从 1 个 NSTextField 获取:

NSMutableArray * SSID_Arr = [[NSMutableArray alloc] initWithCapacity:x];
[SSID_Arr addObject:ssidtxt.stringValue]; // get text from NSTextField
NSLog (@"SSID_Arr : %@",SSID_Arr);

NSString *strSSID;
for(int j=0; j < [SSID_Arr count]; j++)
{
    strSSID = [NSString stringWithFormat:@"\r\nSSID : %@", [SSID_Arr objectAtIndex:j]];
}

你有什么建议吗?提前致谢

【问题讨论】:

    标签: objective-c macos cocoa nsmutablearray nstextfield


    【解决方案1】:

    只做

    NSMutableArray *SSID_Arr = [NSMutableArray new];
    

    【讨论】:

      【解决方案2】:
      NSMutableArray * SSID_Arr = [[NSMutableArray alloc] initWithCapacity:x];
      

      给出一个为 x 值保留空间的数组。但是 现在该位置没有值

      所以首先通过循环填充数组,然后继续为

      NSMutableArray * SSID_Arr = [[NSMutableArray alloc] initWithCapacity:x];
      for (int i=0; i<x; i++) {
          [SSID_Arr addObject:ssidtxt.stringValue]; 
      }
      

      现在数组包含 x 个值,您可以继续。请注意,一个文本字段值在此处填充 x 次。如果您必须存储所有文本字段值,请编写一个适合实现所有值的循环并添加它

      【讨论】:

      • 谢谢,但您的代码只能从 1 个 ssidtxt 获取文本。如果我有很多 ssidtxt???
      • 你可以通过outlet一个一个获取或者给视图设置标签,并通过标签获取视图引用并使用它
      • 我创建了动态文本字段,如何获取标签?
      猜你喜欢
      • 2021-08-24
      • 1970-01-01
      • 2019-03-27
      • 2011-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多