在我的应用程序中,我必须使用登录令牌登录,并且一些参数如下所示,我得到了登录令牌的响应,因为" 45462165"在NSLog中,但无法转到另一个视图控制器。
Method: PMac_LogIn
Parameter: mailaddress String with @
password String
Return: If ok, then you receive a loginToken. (> 0)
If not ok, then loginToken < 0
-1 = user not found
-2 = wrong password
When you can not reach the server, you have to inform the user in dialog, with “Server not available”. In the cases -1 or -2 you should inform the user.
这是我的代码:
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if ([elementName isEqualToString:@""]) {
//your prompt -> token fail
} else if ([elementName isEqualToString:@"-1"] || [elementName isEqualToString:@"-2"] ) {
UIAlertView *errorAlert = [[UIAlertView alloc]
initWithTitle:@"User Not Exist" message:nil delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[errorAlert show];
[errorAlert release];
}
NSInteger LenghtloginToken = [elementName length];
if(LenghtloginToken >=0 ) {
//success
UploadViewController *hm;
hm = [[UploadViewController alloc] initWithNibName:@"UploadViewController" bundle:nil];
[self.navigationController pushViewController:hm animated:YES];
}
}
答案 0 :(得分:0)
根据您的要求,您可以使用多种方法共享数据
1.您始终可以使用NSUserDefaults共享数据。根据您选择的密钥设置您要共享的值,并从下一个视图控制器中与该密钥关联的NSUserDefault获取值。
[[NSUserDefaults standardUserDefaults] setValue: LenghtloginToken forKey:@"LenghtloginToken"]
[[NSUserDefaults standardUserDefaults] objectForKey:@"LenghtloginToken"]
2.您可以在viewcontrollerA中创建一个属性。在viewcontrollerB中创建viewcontrollerA的对象,并为该属性分配所需的值。
@property (strong, nonatomic) NSInteger passedNumber;
添加
@synthesize passedNumber; in
UploadViewController
最后
UploadViewController *hm = [[UploadViewController alloc] initWithNibName:@"UploadViewController" bundle:nil];
hm.passedNumber = LenghtloginToken;
[self.navigationController pushViewController:hm animated:YES];
3.您还可以为此创建自定义委托。
您可以使用自定义委托检查此link以传递数据