संपादन योग्य उपयोग में कुछ पंक्तियों को स्थानांतरित करने के बाद त्रुटि

मैं संपादन योग्य UITableView में कुछ पंक्तियों को स्थानांतरित करने के बाद डेटाबेस में सहेजना चाहता हूं, लेकिन त्रुटि हुई मुझे त्रुटि का कारण नहीं मिल रहा है। कृपया मेरे कोड के बारे में मुझे सलाह दें। धन्यवाद!!

मेरा कोड:

- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath {
           return indexPath.section == 0 && indexPath.row < items.count;        
} 

- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath 
  toIndexPath:(NSIndexPath *)toIndexPath {

        isReOrderNoteList= YES;

        NSString *rowContent = [items objectAtIndex:fromIndexPath.row];
        [items removeObjectAtIndex:fromIndexPath.row];
        [items insertObject:rowContent atIndex:toIndexPath.row];
 }

//I'm using UIButton instead of Navigation barbutton.
- (IBAction)EditTable:(id)sender{

       f(TableView.editing)
        {
            if(isReOrderNoteList)
            {    
                [super setEditing:NO animated:NO]; 
                [TableView setEditing:NO animated:NO];
                [btn_Edit setTitle:@"Edit" forState:UIControlStateNormal];

                FMDatabase *dbS = [FMDatabase databaseWithPath:dbPath];     
                [dbS open]; 

                NSInteger tmp = 1; 
                NSLog(@" [self.items count] : %d", [ items count]);  **// Print 6 !!.** 

                for (NSInteger i = 0; i< [items count]; i++) {

                    Note *list = [[Note alloc] init];
                    list = [items objectAtIndex:i]; 
                    NSLog(@" list.itle : %@", list.title);  **//Error occurred at this line.**
                    NSLog(@" list.IDX : %d", list.IDX);
                    [dbS executeUpdate:@"Update test set sort_seq = ? where  idx = ? ", [NSNumber numberWithInt:tmp], [NSNumber numberWithInt:list.IDX]]; 
                    [list release];
                    tmp++; 
                }
                [dbS close];      
            }

            //Re-init 
            isReOrderNoteList = NO; 
        }
        else
        {
            [super setEditing:YES animated:YES]; 
            [TableView setEditing:YES animated:YES];      
            [btn_Edit2 setTitle:@"Done" forState:UIControlStateNormal]; 
        }

}

त्रुटि:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSConcreteNotification title]: unrecognized selector sent to instance 0x892b550'
*** First throw call stack:
0
जोड़ा संपादित
विचारों: 1
ब्रेक पॉइंट लागू करने या ज़ोंबी सक्षम करने का प्रयास करें। आपकी त्रुटि कहती है कि या तो आप अज्ञात या अपरिभाषित फ़ंक्शन को कॉल कर रहे हैं
जोड़ा लेखक superGokuN, स्रोत

2 उत्तर

आप "आइटम" सरणी पर किए बिना कोड के अंत में नोट जारी करते हैं

    Note *list = [[Note alloc] init];
    list = [items objectAtIndex:i]; 
    NSLog(@" list.itle : %@", list.title);  **//Error occurred at this line.**
    NSLog(@" list.IDX : %d", list.IDX);
    [dbS executeUpdate:@"Update test set sort_seq = ? where  idx = ? ", [NSNumber numberWithInt:tmp], [NSNumber numberWithInt:list.IDX]]; 
    [list release];

यह होना चाहिए

    Note *list = [items objectAtIndex:i]; 
    NSLog(@" list.itle : %@", list.title);  **//Error occurred at this line.**
    NSLog(@" list.IDX : %d", list.IDX);
    [dbS executeUpdate:@"Update test set sort_seq = ? where  idx = ? ", [NSNumber numberWithInt:tmp], [NSNumber numberWithInt:list.IDX]]; 
1
जोड़ा
धन्यवाद! ~ आपका जवाब वह है जो मैं चाहता हूं।
जोड़ा लेखक hyekyung, स्रोत
एम? पहला भाग संशोधित होने के बाद मेरा कोड अच्छा काम कर रहा है। ^^ धन्यवाद!
जोड़ा लेखक hyekyung, स्रोत
दूसरा जवाब आपके उत्तर के अनुसार भी संशोधित किया गया। :-)
जोड़ा लेखक hyekyung, स्रोत
@hyekyung क्षमा करें, आपके कोड का पहला भाग सही है, यह सरणी में फिर से डालने से पहले इसे जारी नहीं किया जाएगा :)
जोड़ा लेखक adali, स्रोत
क्या आप दूसरे भाग को संशोधित नहीं करते?
जोड़ा लेखक adali, स्रोत
तो, मुझे लगता है कि शायद दूसरा भाग काम करता है :)
जोड़ा लेखक adali, स्रोत

मुझे लगता है कि इसकी एलोक इनिट समस्या ... इसलिए "rowContent" और अन्य स्ट्रिंग को आवंटित करने का प्रयास करें जिसका उपयोग आप अपने यूट्यूबव्यू में करते हैं

0
जोड़ा