2012-03-07 77 views
0

我已經開發了一個應用程序,其中我有一個方法,使用核心數據框架的託管對象上下文將其內容加載到數據庫。我在代理的完成啓動方法中調用該方法。我正在使用UITableView來獲取數據並在表格視圖中顯示它。我的問題是相同的數據在表格視圖中顯示兩次。 當我使用Xcode啓動應用程序時,數據只顯示一次,然後停止xcode,當我第一次在設備中打開應用程序時,我正在獲取相同數據的副本。我沒有得到如何避免這種重複,請幫助我。避免在iOS中的UITableView重複條目

-(void) devicedetails 
    { 
     devicename = [UIDevice currentDevice].name; 
     osversion = [UIDevice currentDevice].systemVersion; 
     //some other data like this 
     NSManagedObjectContext context = [self managedObjectContext]; 
     Deviceinfo *detail = [NSEntityDescription insertNewObjectForEntityForName:@"Deviceinfo" inManagedObjectContext:nscontext]; 
     detail.platform = devicename; 
     detail.os_version = devosversion; 
     . 
     . 
     . 
    } 

這是我的方法,我把它稱爲在didfinish推法像下面

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
    { 
    [self devicedetails]; 
    return YES; 
    } 

感謝

+1

向我們展示您的代碼! – dasdom 2012-03-07 11:39:08

+0

我覺得有啓動問題,因爲它只在設備在設備中啓動時複製一次 – NNR 2012-03-07 12:37:48

回答

0

你每次調用-insertNewObjectForEntityForName:inManagedObjectContext:一次插入一個新的對象。

你應該做的是在插入它之前嘗試並獲取對象。如果提取是空的,則插入新對象,否則不要插入它。

+0

謝謝我會試試這個 – NNR 2012-03-07 12:43:45