2013-12-16 64 views
0

的更新計數我加入了很多UIView子視圖我UIViewController如何檢查我的NSArray

用戶可以刷卡(左或右)子視圖關閉UIViewController

我想跟蹤數組數,以便當它達到0並且所有子視圖都消失時,我可以顯示一些東西。

我在UIView控制器的for循環中創建我的子視圖並檢查那裏的計數。

例如:

for (int i = 0; i < objects.count; i++) 
{ 
    self.subView.counter = objects.count; 

    // Some More Code Here ... 

    [self.items addObject:self.subView]; 

    [self.view addSubview:self.subView]; 
} 

在這裏,我可以NSLog櫃檯,並獲得可以在Array子視圖的數量。

在我的子視圖類...

如果我這樣做是爲動畫我完成塊,

self.counter --; 

計數器將減1,但只有1

所以當我刷掉第二張牌時,計數不會改變。

什麼是最好的方式來跟蹤一個數組,並看到它減少每次子視圖移出UIViewController

更新:

我做了什麼建議,現在我得到一個新的問題。這裏是關於發生了什麼事情的細分:

隨着我的子視圖被添加,我看到櫃檯上升,例如 - 添加了6個項目(0 - 5)。

當子視圖被移除時,計數器在最後點擊-1。 (因爲5是當前的子視圖,刪除它將計數器遞減到4等)

我檢查計數器是否爲< 0,將一個UIButton隱藏爲NO,但該按鈕不顯示。

有什麼想法?

回答

1

記錄包含所有子視圖的UIViewController的計數,而不是子視圖本身。真的,每個子視圖都不應該知道其他子視圖...所有它應該知道的是其父視圖,其中包含UIView

UIViewController委託給子視圖上的協議。當子視圖消失時,讓他們調用UIViewController上的委託方法來減少計數。並在該代表方法中,將邏輯處理爲self.count == 0

+0

*其父視圖,包含UIViewController *父視圖不是UIViewController,因爲UIViewController根本不是視圖。也許你的意思是UIView? – Caleb

+0

是............ – nhgrif