ios - 将文本字段值存储在字典中

标签 ios uitextfield nsmutabledictionary

我有添加和删除按钮,可以在 View 中添加文本字段。现在我想将文本字段值存储在字典中。

-(void)addTextField{

keyTextField = [[UITextField alloc] initWithFrame:CGRectMake((((self.view.frame.size.width)*5)/100), yAxisDistance, (((self.view.frame.size.width)*40)/100),(((self.view.frame.size.height)*8)/100))];
keyTextField.borderStyle = UITextBorderStyleRoundedRect;
keyTextField.placeholder = @"Key Value";
keyTextField.delegate = self;
mKeyTag+=1;
keyTextField.tag = mKeyTag;
[self.view addSubview:keyTextField];

valueTextField = [[UITextField alloc] initWithFrame:CGRectMake((((self.view.frame.size.width)*55)/100), yAxisDistance, (((self.view.frame.size.width)*40)/100),(((self.view.frame.size.height)*8)/100))];
valueTextField.borderStyle = UITextBorderStyleRoundedRect;
valueTextField.placeholder = @"Value";
valueTextField.delegate = self;
mValueTag+=1;
valueTextField.tag = mValueTag;
[self.view addSubview:valueTextField];
yAxisDistance = yAxisDistance+(((self.view.frame.size.height)*13)/100);
}

-(void)deleteTextField{

if (mKeyTag>=1000) {
    UITextField *textField = (UITextField *)[self.view viewWithTag:mKeyTag];
    [textField removeFromSuperview];
    mKeyTag-=1;
    yAxisDistance = yAxisDistance-35;
}
if (mValueTag>=2000) {
    UITextField *textField = (UITextField *)[self.view viewWithTag:mValueTag];
    [textField removeFromSuperview];
    mValueTag-=1;
}
}

如果我单击“添加”,它会添加两个文本字段,一个用于键值,一个用于该键的值。但是如果我通过单击添加按钮 5 次添加 5 对文本字段并为这些文本字段提供一些值并尝试存储在字典中,它只存储最后一个文本字段值。但我想存储这 5 对文本字段中提供的所有数据。为了存储数据,我正在使用以下代码

  NSMutableDictionary *Dict = [[NSMutableDictionary alloc]init];
  [Dict setValue:valueTextField.text forKey:keyTextField.text];

请帮忙,因为我是这个领域的新手。

最佳答案

如果您希望一个键有多个值,您需要的是一个字典,其中的值是一个可变数组,并不断向其中添加值。

- (void)addValue:(id)value forKey:(id<NSCopying>)key
{
    NSMutableArray *array = self.dictionary[key];
    if (array == nil)
    {
        array = [NSMutableArray array];
        self.dictionary[key] = array;
    }
    [array addObject:value];
}

关于ios - 将文本字段值存储在字典中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20420433/

相关文章:

ios - 从 iPhone 8 自动调整大小到 iPhone X 后,表格 View 在选项卡栏下调整大小

ios - 在 UITextView 中禁用光标和复制/粘贴(快速)

ios - 在 UITextField 中输入右 View UIImageView

cocoa - NSArrayController 无法与 NSTableView 的 NSMutableDictionary 一起使用

objective-c - 如何将 "int"值存储在 NSMutableArray* 或 NSMutableDictionary* 中?以整数形式传入的 JSON 数据的长期问题。

ios - 从 url 检索 jpg 图像返回 nil。但是,从 url 检索 png 图像工作正常

ios - Xcode - Swift 在网格 2x4 中排列图像

iphone - 使用 iPhone 4 上的陀螺仪补偿罗盘滞后

iphone - UiTextField 事件

cocoa - NSMutableDictionary 内存问题,导致 NSCFDictionary 内存泄漏