昨天我問了一個關於我的表視圖的問題,並將唯一的細節視圖鏈接到表視圖中的每個單元格。我相信我對我的問題here得到了很好的回答。 (希望你可以閱讀這篇文章,看看我需要什麼)。基本上我想知道如果我正確地做我的單身人士。這裏是我的代碼:我在單身人士的正確軌道上嗎?
timerStore.h
#import "Tasks.h"
@interface timerStore : NSObject
{
NSMutableDictionary *allItems;
}
+(timerStore *)sharedStore;
-(NSDictionary *)allItems;
-(NSTimer *)createTimerFor:(Tasks *)t inLocation: (NSIndexPath *)indexPath;
-(void)timerAction;
@end
timerStore.m
@implementation timerStore
+(timerStore *)sharedStore{
static timerStore *sharedStore = nil;
if (!sharedStore)
sharedStore = [[super allocWithZone:nil]init];
return sharedStore;
}
+(id)allocWithZone:(NSZone *)zone{
return [self sharedStore];
}
-(id)init {
self = [super init];
if (self) {
allItems = [[NSMutableDictionary alloc]init];
}
return self;
}
-(NSDictionary *)allItems{
return allItems;
}
-(NSTimer *)createTimerFor:(Tasks *)t inLocation: (NSIndexPath *)indexPath {
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:t.timeInterval target:self selector:@selector(timerAction) userInfo:nil repeats:1.0];
[allItems setObject:timer forKey:indexPath];
return timer;
}
-(void)timerAction{
//custom properties here
}
@end
我有點困惑,因爲我的印象是,一個小區的索引路徑當您向下滾動(出列)時會被回收。但我可能是錯的。無論如何,我在正確的道路上建立一個單身男人作爲link建議的人?
你知道,我一直在編程,現在4年iOS的 - 在工作半打不同的大型應用。我還沒有需要使用單身。 –
特別是,如果你有一個表格視圖,你必須有一個視圖控制器。該視圖控制器可以包含表格的數據(作爲委託)。單身人士不需要存儲表格數據。 –
是的,我想避免使用單身人士,但我不知道如何做到這一點。基本上即時使用NSFetchedResultsController填充表視圖(鏈接到UIViewController子類)。每個單元格應在其詳細視圖中有一個計時器(由didSelectRowAtIndexPath產生)。顯然單身是確保多個計時器可以共存並通過將詳細視圖限制爲一個初始化來減少內存使用的最佳方式......更多信息請參閱OP – EvilAegis