2013-02-11 70 views
0

我是新来的目标C. 我想加载从当前视图按钮点击新视图,但当我点击按钮它执行代码,但什么也不做,即不加载新的视图控制器.. 下面是我的代码...无法加载UIViewController

- (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]; 
} 

} 
+0

我从来没有见过目标C,你的'按钮点击处理程序'在哪里?你应该在初始化的'_detailView'上调用某种'show'函数吗? – 2013-02-11 09:59:45

+0

didScanResult在按钮点击时自动调用,因为它是ZXing SDK的委托方法 – 2013-02-11 10:12:48

+0

您能否解释一下您在这种方法中做了些什么?如果你解散了当前的VC,那么在解散之后,堆栈中的前一个VC将被呈现。 – Neeku 2013-02-11 10:14:21

回答

0

试图与删除 “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]; 
} 


} 

希望这将有助于你。

干杯!

+0

我尝试了你的建议。但这一次它显示一个空白的屏幕,甚至它不会查看AlarmViewControllerDidLoad .... – 2013-02-11 10:10:39

+0

没有得到你完全通过“空白屏幕”的手段。它是“AlarmViewController”。并尝试使用“AlarmViewController”类的“viewWillAppear”方法。它对你也有帮助。 – 2013-02-11 10:17:53