Ios 调用了VIewDidLoad,但未加载视图
我正在尝试加载按钮操作上的Ios 调用了VIewDidLoad,但未加载视图,ios,ios7,uiviewcontroller,uinavigationcontroller,viewdidload,Ios,Ios7,Uiviewcontroller,Uinavigationcontroller,Viewdidload,我正在尝试加载按钮操作上的ViewController,但它没有加载到iPhone中 - (IBAction)SubmitTapped:(id)sender { if([txtName.text isEqualToString:@"User"]) { NSLog(@"It is User"); } else { NSString *soapMessage = @""; ThirdVC *thirdVCObj
ViewController
,但它没有加载到iPhone中
- (IBAction)SubmitTapped:(id)sender
{
if([txtName.text isEqualToString:@"User"])
{
NSLog(@"It is User");
}
else
{
NSString *soapMessage = @"";
ThirdVC *thirdVCObj = [self.storyboard instantiateViewControllerWithIdentifier:@"pushToThirdVC"];
[self.navigationController pushViewController:thirdVCObj animated:YES];
[self generalParsing:@"" :soapMessage];
[sender setUserInteractionEnabled:NO];
}
}
注意:-我已确认我的UIViewController
类名正常&storyboard id
在代码中正常,否则它将崩溃,当我对UINavigationController
进行第一次VC根视图时,单击SecondVC
的按钮操作,它不会加载我的ThirdVC
,但当我将UINavigationController
的RootView
分配给我的SecondVC
时,它会加载我的第三个VC
我试着将上面两行推送代码放到我的Web服务解析类中,但它也没有加载到那里
调用MyviewDidLoad
&ViewWillDisplay
时,我在这些方法中设置日志
我在这里搜索了StackOverFlow
上所有可能的问题,但没有找到任何解决方案
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
enter code here
首先,您的代码违反了所有“Cocoa编码准则”
我把这段代码复制到一个新的项目中,它可以正常工作。
这个问题使得WebService解析器必须确保从主线程调用pushViewController:animated:
试试这个
dispatch_async(dispatch_get_main_queue(), ^{
NSString *soapMessage = @"";
ThirdVC *thirdVCObj = [self.storyboard instantiateViewControllerWithIdentifier:@"pushToThirdVC"];
[self.navigationController pushViewController:thirdVCObj animated:YES];
[self generalParsing:@"" :soapMessage];
[sender setUserInteractionEnabled:NO];
});
dispatch\u async(dispatch\u get\u main\u queue()^{
NSString*soapMessage=@;
ThirdVC*thirdVCObj=[self.storyboard实例化eviewcontrollerwhidentifier:@“pushToThirdVC]”;
[self.navigationController pushViewController:thirdVCObj动画:是];
[自泛型搜索:@”“:soapMessage];
[发件人setUserInteractionEnabled:否];
});
如果你把NSLog(@“新控制器%@,导航控制器%@”,thirdVCObj,self.navigationController),你会看到什么
就在pushViewController
之前?@PhillipMills New controller,Navigation controller@JayminRaval尝试记录navigationcontrollers.viewcontrollers.count如果你得到0,我将进一步解释。@Dany尝试了这个NSLog(@“Counts%lu”,(未签名的长)self.navigationController.viewcontrollers.count);明白了吗3@JayminRaval试着让你的第一个VC作为rootViewController来展示你的第三个DVC。因此,这就像根-->第一-->推-->第二-->当前-->第三个-->在webservice解析器上尝试了该代码,因为它不适用于我的主线程方法—(iAction)SubmitTapped:(id)发送方{}它如何违反“Cocoa编码准则”?请您解释一下好吗?您可以阅读这篇文章,它不大写方法名称,而且generalParsing:@“”:soapMessage也令人困惑。您需要将其命名为parseGeneral:soapMessage:您是生命的救世主:)