如何在Objective-C中向数组添加变量?

时间:2010-12-24 15:22:25

标签: objective-c xcode

我有一个我正在制作的程序,它有两个数组,一个用于用户名,一个用于密码。我试图将用户输入的字符串添加到文本框中的数组。相反,程序只添加一次字符串。我该如何解决这个问题?

我正在使用NSMutableArray。我的代码是:

    NSString *usrname = [NSString stringWithFormat:@"%d", usrString];
[usrs addObject:usrname];

此代码添加了一次字符串,但是当我更改字符串并再次按下按钮时,它不会添加第二个字符串。

2 个答案:

答案 0 :(得分:1)

检查您的代码,错误地说您没有设置具有固定容量的数组([[NSMutableArray alloc] initWithCapacity: arrayCapacity]);

你只需要在没有容量的情况下初始化(NSMutableArray *array = [[NSMutableArray alloc] init];),这样就可以将它带到可用的内存中。

答案 1 :(得分:-1)

嗨根据您提供的信息,您必须在.h和.m文件中编写以下代码.h文件

IBOutlet UITextFiled *userNameTextField,*PasswordTextField;
IBOutlet UIButton *loginButton;
NSMutableArray *usrs,*passwords;


-(IBAction)loginButtonClick;


In .m file

-(void)viewDidLoad
{

usrs=[[NSMutableArray alloc]init];
passwords=[[NSmutableArray alloc]init];

}

-(IBAction)loginButtonClick
{


NSString *userstr=[[NSString alloc]initWithFormat:@"%@",userNameTextField.text];
NSString *passwordstr=[[NSString alloc]initWithFormat:@"%@",PasswordTextField.text];


[usrs addObject:userstr];
[passwords addobject:passwordstr];

}

我希望这会对你有所帮助。现在数据将添加到数组中但是如果你关闭你的应用程序或者如果你从登录页面移动到另一个页面,那么数组将变得清晰。为了以永久方式存储数据,你必须使用plist或sqlite。