2015-06-04 50 views
-1

我正在使用textfield爲用戶輸入他的用戶名和密碼來註冊,然後將其存儲在一個數組中。但是當我登錄我的數組時,它顯示爲空。這是我的代碼TextField文本沒有被添加到可變數組中

User = self.Username.text; 
    UserPassword = self.UserPass.text; 
    LoginPageViewController *loginPage; 
    [loginPage.registeredUsernames addObject:User]; 
    [loginPage.registeredPassword addObject:UserPassword]; 
    NSLog(@"%@", loginPage.registeredUsernames); 
    NSLog(@"%@", loginPage.registeredPassword); 

請幫

+0

你是如何實例化'loginPage.registeredUsernames'和'loginPage.registeredPassword'的? 'Null'可能意味着你的數組是'nil',因爲你沒有實例化它們。 – sikhapol

+0

我在另一個.m文件中做過 – Chandran

+0

正如其他人所說的,你沒有實例化'loginPage'。嘗試這樣做應該解決問題。 – sikhapol

回答

0

loginPage只是聲明瞭一個變量,但沒有任何實例化對象。
這意味着這是零,我們發送消息loginPage.registeredUsernames沒有任何反應,因爲沒有對象存在來處理該消息。

0

你初始化了你的可變數組嗎?如果不嘗試初始化數組並保存數組中的直接值,如

[loginPage.registeredUsernames addObject:self.Username.text]; 
[loginPage.registeredPassword addObject:self.UserPass.text]; 
0

你還沒有實例化你的對象。試試這個代碼:

User = self.Username.text; 
UserPassword = self.UserPass.text; 
NSMutableArray *arrayUsernames = [[NSMutableArray alloc] init]; 
NSMutableArray *arrayPasswords = [[NSMutableArray alloc] init]; 
LoginPageViewController *loginPage = [[LoginPageViewController alloc] initWithNibName:@"LoginPageViewController" bundle:nil]; 
[arrayUsernames addObject:User]; 
[arrayPasswords addObject:UserPassword]; 
loginPage.registeredUsernames = arrayUsernames;  
loginPage.registeredPassword = arrayPasswords; 
+0

它仍爲空 – Chandran

+0

@Chandran嘗試更新的答案 –

+0

它的工作原理,但我的陣列中的字符串已經消失 – Chandran

0

我認爲你LoginPageViewController對象的屬性registeredUsernamesregisteredPassword是NSMutableArrays。

如果情況確實如此,給你的代碼,你將需要實例化LoginPageViewController *loginPage並確保在該對象的init方法,則需要正確實例化registeredUsernamesregisteredPassword性能。東西的效果:

... 
_registeredUsernames = [NSMutableArray new]; 
_registeredPassword = [NSMutableArray new]; 
... 

請注意,您發佈未初始化loginPage對象的代碼,也許這是在後一個錯字,否則你將需要使用它之前初始化對象。

希望這會有所幫助。

+0

它仍然爲空 – Chandran

+0

嗯......你可以發佈與初始化'LoginPageViewController'初始化相關的代碼嗎? 'registeredUserNames'和'registeredUserPassword'屬性? –

0

首先啓動LoginPageViewControllers對象和registeredUsernames,registeredPassword數組,然後直接將您的textfield值傳遞給數組。試試這個代碼

LoginPageViewController*loginPage = [[LoginPageViewController alloc] initWithNibName:@"LoginPageViewController" bundle:nil]; 
    loginPage.registeredUsernames=[[NSMutableArray alloc]init]; 
    loginPage.registeredPassword=[[NSMutableArray alloc]init]; 


[loginPage.registeredUsernames addObject:self.Username.text]; 
[loginPage.registeredPassword addObject:self.UserPass.text]; 
NSLog(@"%@", loginPage.registeredUsernames); 
NSLog(@"%@", loginPage.registeredPassword);