2015-11-17 48 views
0

我在我的.m文件中有两种方法,并且我想通过不同的值访问,但在我的Facebook变量中给出了零值,但是如果我只使用一行并删除第二行对象的关键然后它工作正常的一种方法。 我怎么做这工作对我两种方法用不同的值调用不同的方法使用相同的字符串

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 
user=[defaults objectForKey:@"userid"]; 
facebook=[defaults objectForKey:@"FACEBOOKprofile"]; 
facebook =[defaults objectForKey:@"VLCC"]; 

if ([facebook isEqualToString:@"VLCCFACEBOOK"]) 
{ 
    [self FacebookRecord]; 
} 
else if([facebook isEqualToString:@"VLCC"]) 
{ 
    [self VlccRecord]; 
} 
+0

你想访问的两种方法是同时或基于任何一个条件.... –

回答

1

假设

选择-1

// for accessing the both condition in same time 

最初存储在你的方法UserDefault value based

如果你是facebook访问,在那个时候店里像

[[NSUserDefaults standardUserDefaults] setObject:"VLCCFACEBOOK" forKey:@"FACEBOOKprofile"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

如果你是VLCC访问,在那个时候店里像

[[NSUserDefaults standardUserDefaults] setObject:"VLCC" forKey:@"VLCCprofile"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

字符串的字符串和检索两并像

if ([[[NSUserDefaults standardUserDefaults] 
objectForKey:@"FACEBOOKprofile"]isEqualToString:@"VLCCFACEBOOK"]) 
{ 
[self FacebookRecord]; 
} 
if([[[NSUserDefaults standardUserDefaults] 
objectForKey:@"VLCCprofile"] isEqualToString:@"VLCC"]) 
{ 
[self VlccRecord]; 
} 

选择-2

// for accessing single condition on single time 

如果你是facebook访问,在那个时候店里像

[[NSUserDefaults standardUserDefaults] setObject:"VLCCFACEBOOK" forKey:@"FACEBOOKprofile"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

如果你是VLCC访问,在那个时候店里像

字符串字符串
[[NSUserDefaults standardUserDefaults] setObject:"VLCC" forKey:@"FACEBOOKprofile"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

并检索两者并检查像

if ([[[NSUserDefaults standardUserDefaults] 
objectForKey:@"FACEBOOKprofile"]isEqualToString:@"VLCCFACEBOOK"]) 
{ 
[self FacebookRecord]; 
} 
else if([[[NSUserDefaults standardUserDefaults] 
objectForKey:@"FACEBOOKprofile"] isEqualToString:@"VLCC"]) 
{ 
[self VlccRecord]; 
} 
+0

谢谢@安布先生..你的建议总是帮助我..谢谢很多....我选择选择2 –

0

在你的代码中,[self VlccRecord]方法总是被调用,因为你覆盖了facebook变量。

facebook=[defaults objectForKey:@"FACEBOOKprofile"]; 
facebook =[defaults objectForKey:@"VLCC"]; 

如果你想追加两个字符串:然后使用stringbyAppendingString方法。

0
int a = 10; 
a = 20; 
print >> a; //20 

int a = 10; 
print1 >> a; //10 
a = 20; 
print2 >> a; //20 

这里,
一个实=;
print1 = [self FacebookRecord];
print2 = [self VlccRecord];

我相信你会明白。

相关问题