gpt4 book ai didi

ios - 在 iphone 中单击按钮时如何将文本字段/标签中的值添加到数组

转载 作者:行者123 更新时间:2023-11-28 18:13:39 25 4
gpt4 key购买 nike

我有一个文本字段,用户可以在其中输入 1-10 之间的值

在文本字段的底部我有按钮。

当用户单击完成按钮时,我需要将文本字段中的值添加到数组中

为此我写了这样的代码。

- (void)viewDidLoad
{
[super viewDidLoad];
PainlevelsArray = [[NSMutableArray alloc] init]; //PainlevelsArray declared in .h

}


-(IBAction)doneClick:(id)sender
{
[PainlevelsArray addObject:txtField.text ];

// [PainlevelsArray insertObject:rateLabel.text atIndex:0 ];
NSLog(@"PainlevelsArray *** %@",PainlevelsArray);

[self.navigationController popToRootViewControllerAnimated:YES];

}

但是每次点击按钮时,数组只会在日志中显示最近添加的一个值,就像这样

控制台输出

========================

2012-05-07 10:11:15.689 ESPT[796:10d03] PainlevelsArray *** (
2
)
2012-05-07 10:11:27.984 ESPT[796:10d03] PainlevelsArray *** (
4
)

每次加载 View 时我的数组都会变空,并在单击按钮时添加一个新条目但我需要这样

2012-05-07 10:11:27.984 ESPT[796:10d03] PainlevelsArray *** (
4,
5,
2,
6,
8,
)

所有输入的值都添加/插入到现有数组中。

提前致谢

在 ExerciseStartViewController 中

-(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
ExerciseResult *result = [[ExerciseResult alloc] init];
[self.navigationController pushViewController:result animated:YES];
[result release];
}

在当前/ExerciseResult View Controller 中

- (void)viewDidLoad
{
[super viewDidLoad];
PainlevelsArray = [[NSMutableArray alloc] init]; //PainlevelsArray declared in .h

}


-(IBAction)doneClick:(id)sender
{
[PainlevelsArray addObject:txtField.text ];

// [PainlevelsArray insertObject:rateLabel.text atIndex:0 ];
NSLog(@"PainlevelsArray *** %@",PainlevelsArray);

[self.navigationController popToRootViewControllerAnimated:YES];

}

最佳答案

您需要使用全局数组。

最好的解决方案是在 AppDelegate.h 文件中声明一个数组,并在 applicationdidfinishlaunch 方法中分配初始化这个数组。

AppDelegate *app =  (AppDelegate*)[[UIApplication sharedApplication] delegate];
[app.arrMutable addObject:textField.text ];

使用 UserDefaults:这些用于以键值格式保存您的应用程序数据。存储为 userdefaults 的值/对象始终保留在应用程序中,直到您没有将其从沙箱中删除。您可以使用以下代码将数组存储在 userdefaults 中。

[[NSUserDefaults standardUserDefaults] setObject:app.arrMutable forKey:@"Global_Array_Key"];

在 AppDelegae applicationDidFinishLuanch 方法中,您可以使用以下方法从 userdefaults 检索此数组:

self.arrMutable = [[NSMutableArray alloc]initWithArray:[[NSUserDefaults standardUserDefaults]objectForKey:@"Global_Array_Key"]];

关于ios - 在 iphone 中单击按钮时如何将文本字段/标签中的值添加到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10476787/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com