2012-08-10 99 views
0

可能有人請幫我用下面的代碼:委託未設置

- (IBAction)addCellButton: (UIBarButtonItem *)sender 
{ 
    if(!self.imagePopover) 
    { 
     AlbumPicker *albumPicker = [self.storyboard instantiateViewControllerWithIdentifier:@"MultipleImagePicker"]; 
     self.imagePopover = [[UIPopoverController alloc] initWithContentViewController:albumPicker]; 
     albumPicker.delegate = self; 
     NSLog(@"%@", albumPicker.delegate); 
     [self.imagePopover presentPopoverFromBarButtonItem:sender 
            permittedArrowDirections:UIPopoverArrowDirectionAny 
                animated:YES]; 
     self.imagePopover.delegate = self; 
    } 
} 

的問題是是,當我被打印出來檢查委託我albumPicker.m,它被設置爲nil?我是否正確設置代表?

+0

你確定'albumPicker'本身不是零? – 2012-08-10 01:58:56

+0

它似乎不是零。我只是打印它的內容來檢查它。它不是零。當我打印albumPicker.delegate時,上面的代碼中不是零 – 2012-08-10 02:12:11

+0

那麼什麼是零? imagePopover.delegate或albumPicker.delegate? – rdelmar 2012-08-10 02:50:35

回答

1

看來你已經以正確的方式設置了委託。我認爲如果代表工作正常,這可能是由於代表的財產。我隱約記住,在Google(或Apple)編碼指南中,代表的財產應設置爲assigned而不是retain

另外,你的問題似乎對我來說還不清楚。我想如果你想檢查委託是否工作,你最好設置一個委託方法,看看是否調用了方法。