2014-04-19 66 views
0

這裏是場景:我正在使用MWPhotoBrowser。我可以一次推好它。第二次嘗試推送應用程序崩潰時沒有任何幫助。這是一個ARC項目,並且這個完全相同的代碼在以前版本的應用程序中工作正常。我傻眼了。推視圖控制器崩潰的應用程序

-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath 
{ 
    selectedIndexPath = indexPath; 
    if(browser == nil) 
    { 
     browser = [[MWPhotoBrowser alloc] initWithDelegate:self]; 
    } 

    // Set options 
    browser.displayActionButton = YES; // Show action button to allow sharing, copying, etc (defaults to YES) 
    browser.displayNavArrows = YES; // Whether to display left and right nav arrows on toolbar (defaults to NO) 
    browser.zoomPhotosToFill = NO; // Images that almost fill the screen will be initially zoomed to fill (defaults to YES) 
    [browser setCurrentPhotoIndex:indexPath.row]; // Example: allows second image to be presented first 
    //browser.wantsFullScreenLayout = YES; // iOS 5 & 6 only: Decide if you want the photo browser full screen, i.e. whether the status bar is affected (defaults to YES) 
    // Present 
    [self.navigationController pushViewController:browser animated:YES]; 
} 

點擊一個單元格一次,MWPhotoBrowser打開罰款。回去後,再次點擊一個細胞,應用程序崩潰只是調試器,但沒有調用堆棧或錯誤原因:

(lldb): 

瀏覽器是一個強大的成員變量。它沒有被過早釋放。我也可以保證它完全崩潰在方法的最後一行。

有人請賜教我嗎?我會解決它,如果應用程序至少給我一個崩潰的原因,而不是把調試器扔在我的臉上。

+0

它在哪裏崩潰?什麼是錯誤?如果需要,請參閱http://raywenderlich.com/10209/my-app-crashed-now-what-part-1。 – rmaddy

+0

你必須在調試器中輸入命令。 [更多信息](http://lldb.llvm.org/tutorial.html)我會用'bt'開始回溯。 –

+0

@rmaddy:就像我在問題描述中所說的那樣,它在方法的最後一行中崩潰了,就像我描述的那樣,它沒有給我一個崩潰的原因,只是給了我調試器。 –

回答

1

我已經廣泛使用了MWPhotoBrowser,並且曾經遇到同樣的問題。我解決它的方法是通過檢查MWPhoto對象來查看它們是否已經正確設置。我意識到我沒有創建其中的一些,因此崩潰。我會檢查你存儲你的MWPhotos的地方,並確保它們都已經設置完畢。希望這可以幫助!

+0

如果你可以提供更多的代碼,我可以指出你的問題在哪裏! – Gabriel

+0

Heya Gabriel。如果你檢查我的代碼,你會發現我有一張支票來查看照片瀏覽器是否爲零。取消支票似乎可以解決問題,但我認爲這肯定會導致內存泄漏。 –

相關問題