2012-07-03 39 views
0

嗨,我是xcode编程的新手。所以这个问题听起来很荒谬。我正在尝试UIWebview中的各种功能。我成功添加了网址文本框并在Google文本框中进行搜索。现在,我试图让用户添加书签。为此,我将URL保存在一个数组中。但是,当我单击书签栏按钮项目时,我想要一个UIPopover视图弹出。我在尝试初始化UIPopoverController时不断收到此错误。UIPopoverController尝试初始化时抛出异常

objPopOverController = [[UIPopoverController alloc]init ]; 

任何帮助,为什么它在这里抛出一个异常。

谢谢。

编辑:

- (IBAction)addBookmark:(UIBarButtonItem *)sender { 
    BookmarkPopover *objBook = [[BookmarkPopover alloc]init];  
    objPopOverController = [[UIPopoverController alloc]init ]; 
    objPopOverController.contentViewController = objBook; 
    objPopOverController.delegate = self; 
    objPopOverController.popoverContentSize = CGSizeMake(180, 120); 
    [objPopOverController presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES]; 
} 

控制台:

There is absolutely no warranty for GDB. Type "show warranty" for details. 
This GDB was configured as "x86_64-apple-darwin".Attaching to process 13287. 
Pending breakpoint 1 - "objc_exception_throw" resolved 
[Switching to process 13287 thread 0x2303] 
[Switching to process 13287 thread 0x207] 
sharedlibrary apply-load-rules all 
Error in re-setting breakpoint 1: 
Catchpoint 2 (throw)Error in re-setting breakpoint 1: 
Error in re-setting breakpoint 1: 
Current language: auto; currently objective-c 
(gdb) 

self ViewController * 0x6829f20 
_cmd SEL 0x4437 
sender UIBarButtonItem * 0x6a33020 
objBook BookmarkPopover * 0x68528b0 
Registers (null) (null) 
Vector Registers (null) (null) 
x87 Registers (null) (null) 

编辑2:

我试图初始化UIView的亲们语法,然后将它,但它仍然给了我同样的错误。

-(IBAction) buttonAction:(id)sender { 

//build our custom popover view 

UIViewController* popoverContent = [[UIViewController alloc] init]; 

UIView* popoverView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 300)]; 

popoverView.backgroundColor = [UIColor whiteColor]; 

popoverContent.view = popoverView; 

//resize the popover view shown 

//in the current view to the view's size 

popoverContent.contentSizeForViewInPopover = CGSizeMake(200, 300); 

//create a popover controller 

self.objPopOverController = [[UIPopoverController alloc] initWithContentViewController:popoverContent]; 

//present the popover view non-modal with a 
//refrence to the button pressed within the current view 
[self.objPopOverController presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES]; 

//release the popover content 

}

我还是卡住当过我初始化我PopOverController。

+2

你可以发表一些代码和你得到什么异常吗? –

+0

嘿,我刚才编辑的问题.. – footyapps27

+0

我们可以看到'self.objPopOverController'?你在使用ARC吗? –

回答

0

您可能不会使用init初始化popover控制器。您必须使用-initWithContentViewController:指定内容视图控制器的初始化。您触发的导致崩溃的声明以及UIPopoverController的文档将告诉您这一点。

+0

hey jason我试着用下面的命令初始化它。 BookmarkPopover * objBook = [[BookmarkPopover alloc] init]; objPopOverController = [[UIPopoverController alloc] initWithContentViewController:objBook]; 仍然它我得到相同的错误.. – footyapps27

+0

@ footyapps27是objBook UIViewController的适当后代? –

+0

是的,它是一个正常的UIViewController类.. 我刚刚对BookmarkPopover类的.xib文件进行了更改。将视图大小更改为(180,120) – footyapps27

相关问题