2014-05-01 98 views
-1

在我的相冊應用程序中,我會在集合視圖中顯示照片的縮略圖,並在頁面視圖中查看每張照片。現在我在頁面視圖中添加一個刪除按鈕,按下刪除按鈕後,我可以成功刪除數據庫中的當前照片。但是我更新當前視圖時遇到問題。我想知道哪裏可以爲當前視圖添加更新代碼(視圖插入到頁面視圖中),更重要的是,如何更新當前視圖,就像我首先從集合視圖中輸入視圖一樣。如何在UIPageViewController中刪除照片後更新整個視圖?

這裏是我的簡單刪除代碼(self.ppvc是我顯示當前照片的照片頁面視圖控制器)

- (IBAction)deletePhoto:(UIBarButtonItem *)sender 
{ 

    NSIndexPath *indexPathOfCurrentPhoto = [NSIndexPath indexPathForItem:self.photoNumber inSection:0]; 
    NSArray *photoToBeDeleted = @[indexPathOfCurrentPhoto]; 

    //delete from database 
    [Photo deletePhotosFromAlbum:self.albumName withIndexPathArray:photoToBeDeleted inManagedObjectContext:self.ppvc.context]; 

    //delete from UI 
    [self.ppvc.thumbnails removeObjectAtIndex:self.photoNumber]; 

} 
+0

你沒有描述得很好。你有一個帶有縮略圖的集合視圖,如果用戶點擊了一個,你可以切換到一個單獨的顯示,使用UIPageViewController在頁面之間顯示一個帶有橫向捲動或頁面捲曲的圖像/頁面?您需要更好地描述您的用戶界面,並描述用戶用於刪除照片的操作。用戶是否在點擊一個按鈕的同時在頁面視圖控制器中查看該照片的同時刪除當前照片,或者在收藏視圖中點擊該按鈕? –

回答

0

如果你在一個UICollectionview顯示縮略圖,你可能看爲[collectionView deleteItemsAtIndexPaths:]方法。例如

[self.collectionView deleteItemsAtIndexPaths:indexPathOfCurrentPhoto]; 

或者,您可以選擇通過調用reloadSections方法重新加載該部分。

+0

對不起。你誤解了我的描述。我想要做的是在頁面視圖中更新UI。在我的收藏視圖中,一切正常。 – Reggie

0

THINK你是說你想擁有在UIPageViewController當前頁面上的刪除按鈕,並點擊刪除按鈕應該刪除當前圖像,然後更新頁面視圖控制器來顯示下一個圖像(有點像撕掉一本書的頁面,露出下面的頁面。)

如果那是真的,那麼我認爲你想使用UIPageViewController方法setViewControllers:direction:animated:completion:。如果我正確讀取文檔,該方法可讓您用不同視圖控制器陣列替換視圖控制器陣列。如果您設置了動畫:YES,則應該使滾動/頁面捲曲成爲動畫,以便爲當前新圖像顯示頁面。

免責聲明:我從來沒有試過從'UIPageViewController'用戶界面內編輯頁面列表。

相關問題