【问题标题】:can not load UIViewController无法加载 UIViewController
【发布时间】:2013-02-11 09:55:09
【问题描述】:

我是目标 C 的新手。 我正在尝试在单击按钮时从当前视图加载新视图,但是当我单击按钮时,它会执行代码但什么也不做,即不加载新的视图控制器。 以下是我的代码...

- (void)zxingController:(ZXingWidgetController*)controller didScanResult:(NSString *)resultString {
[self dismissModalViewControllerAnimated:YES];

//Display QRCode in string....
NSLog(@"Result::::%@",resultString);

[_qrCodeParser initWithQRString:resultString];
int i=[_qrCodeParser parseQROCode];
sharedInstance=[SharedInstance sharedInstance];
NSLog(@"%@",sharedInstance._medicineData);
if (i==0) {
    _detailView= [[AlarmViewController alloc] initWithNibName:@"AlarmViewController" bundle:nil];
    [self presentViewController:_detailView animated:YES completion:nil];
}

}

【问题讨论】:

  • 我从未见过目标C,你的button click handler在哪里?你应该在初始化的_detailView 上调用某种show 函数吗?
  • didScanResult 是 ZXing SDK 的委托方法,在按钮点击时自动调用
  • 你能解释一下你在这个方法中做了什么吗?如果您正在关闭当前的 VC,那么堆栈中的前一个 VC 将在关闭后呈现。

标签: iphone ios uiviewcontroller xib


【解决方案1】:

尝试删除“dismissModalViewControllerAnimated”控制器行,如下所示:

- (void)zxingController:(ZXingWidgetController*)controller didScanResult:(NSString *)resultString {
//[self dismissModalViewControllerAnimated:YES];

//Display QRCode in string....
NSLog(@"Result::::%@",resultString);

[_qrCodeParser initWithQRString:resultString];
int i=[_qrCodeParser parseQROCode];
sharedInstance=[SharedInstance sharedInstance];
NSLog(@"%@",sharedInstance._medicineData);
if (i==0) 
{
    _detailView= [[AlarmViewController alloc] initWithNibName:@"AlarmViewController" bundle:nil];
    [self presentViewController:_detailView animated:YES completion:nil];
}


}

希望对你有所帮助。

干杯!

【讨论】:

  • 我尝试了你的建议。但这次它显示一个空白屏幕,甚至它不会 viewDidLoad of AlarmViewController....
  • 无法通过“空白屏幕”准确了解您。它是“AlarmViewController”。并尝试使用“AlarmViewController”类的“viewWillAppear”方法。它对您也有帮助。
猜你喜欢
  • 2012-09-08
  • 1970-01-01
  • 2014-12-03
  • 1970-01-01
  • 2014-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-04
相关资源
最近更新 更多