스타일 지정되지 않은 CoreData 개체가 삭제되었습니다.

허크 NburkS

프로젝트 목록을 표시하는 UItableView가 있습니다. 이 프로젝트 목록을 선택 및 선택 취소 할 수 있습니다.

사용자가 tableview에서 항목을 선택하면 해당 사전을 내 coredata에 추가합니다.

사용자가 테이블 뷰에서 항목을 선택 취소하면 코어 데이터에서 해당 사전을 삭제합니다.

내가 선택할 때마다 coredata 객체를 기록하고 선택 취소하면 모든 것이 잘 작동하므로 항목 3을 선택 취소하면 항목 3을 선택 취소하면 1과 2 만 기록합니다.

그래서 나는 그 기능이 잘 작동한다는 것을 알고 있습니다. 이제 내가 구현 한 다음으로 잘못되는 비트는 tableview가 표시 될 때 내 coredata에서 항목이 있는지 확인한 다음 현재 셀과 관련된 항목을 찾을 때 액세서리 틱을 추가하는 것입니다. 이것은 이미 핵심 데이터에 저장 한 값을 표시하기위한 것입니다.

이제 이상한 것은 이전에 coredata에서 항목 3을 제거하고 coredata 값을 읽고 1 & 2 만 존재하는 것을 확인하여 확인했습니다. 그런 다음 애플리케이션을 다시 빌드하여 뷰가로드 될 때 틱을 할당하는 함수가 제대로 작동하는지 확인합니다. 뷰가로드되면 항목 1 2 및 3이 모두 다시 선택됩니다.

내가 뭘 잘못하고 있는지 잘 모르겠지만 이것은 선택 취소시 호출되는 핵심 데이터 삭제 기능입니다.

// Deleting values/tables from coredata entity
- (void)deleteSingleObject:(NSString *)entityDescription Dictionary:(NSDictionary *)dictionary {
    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
    NSEntityDescription *entity = [NSEntityDescription entityForName:entityDescription inManagedObjectContext:__managedObjectContext];
    [fetchRequest setEntity:entity];

    NSString *projectIDString = [dictionary objectForKey:@"ProjectID"];
    NSPredicate *p=[NSPredicate predicateWithFormat:@"projectID == %@",projectIDString];
    [fetchRequest setPredicate:p];


    NSError *error;
    NSArray *items = [__managedObjectContext executeFetchRequest:fetchRequest error:&error];

    for (NSManagedObject *product in items) {
        [__managedObjectContext deleteObject:product];
    }

}

뷰가로드 될 때 틱을 할당하는 방법입니다.

// check if cell needs accessorytick
    for (int i = 0; i < [projectListReadFromCoreDataMutableArray count]; i++) {
        NSDictionary *tempReadCoreDataDictionary = [projectListReadFromCoreDataMutableArray objectAtIndex:i];
        if ([[tempReadCoreDataDictionary objectForKey:@"ProjectID"] isEqualToString:[projectDictionary objectForKey:@"ProjectID"]]) {
            projectListCustomCell.accessoryType = UITableViewCellAccessoryCheckmark;
        }
    }

어떤 도움이라도 대단히 감사하겠습니다. 더 많은 정보 나 코드가 필요하면 알려주세요.하지만 이것이 작동하지 않는 이유라고 생각하는 두 가지 핵심 부분입니다.

가브리엘 페트로 넬라

관리 개체 컨텍스트에서 개체를 삭제하지만 이러한 수정 사항을 영구 저장소에 저장하지 않습니다.

문서 인용

컨텍스트가 저장 될 때까지 새 객체가 저장소에 저장되지 않는 것처럼 삭제 된 객체는 컨텍스트가 저장 될 때까지 저장소에서 제거되지 않습니다.

이것이 애플리케이션을 다시로드 할 때 개체가 다시있는 이유입니다.

MOC를 영구 저장소에 저장하여 삭제를 영구적으로 만들어야합니다.

NSError *error = nil;
if (![_managedObjectContext save:&error]) {
    // handle error      
} 

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

PySide2 + QML : QApplication : 유효하지 않은 스타일 재정의가 전달되었습니다. 무시 함

분류에서Dev

Django : 개체 ID가 있지만 개체가 미디어 파일에서 삭제되었습니다.

분류에서Dev

컨텍스트 API 문제-개체가 정의되지 않았습니다.

분류에서Dev

추가되었지만 git에 커밋되지 않은 파일을 삭제할 수 있습니까?

분류에서Dev

__vfptr 테이블이 삭제되지 않은 개체에서 손상되었습니다.

분류에서Dev

행 제거시 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.

분류에서Dev

절인되지 않은 개체가 원본과 일치하지 않습니다.

분류에서Dev

처리되지 않은 예외입니다. System.NullReferenceException : 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.

분류에서Dev

개체가 정의되지 않은 각도 단위 테스트 일 수 있습니다.

분류에서Dev

MongoDB 개체는 데이터베이스에서 삭제되지 않습니다.

분류에서Dev

자바 스크립트 : "정의되지 않음"은 개체가 아닙니다.

분류에서Dev

.htaccess로 확장을 제거하지만 매개 변수를 유지하면 스타일이 지정되지 않은 페이지가 발생합니다.

분류에서Dev

테스트 계정을 제공하지 않았기 때문에 메타 데이터가 거부되었지만 내가 할 수있는 일은 없습니까?

분류에서Dev

체크 박스가 Mac Chrome에서 스타일이 지정되지 않음

분류에서Dev

Facebook 개체의 일부가 정의되지 않은 것으로 표시되지만 정의되지 않은 것은 아닙니다.

분류에서Dev

선택적 체인 Typescript에서 개체가 '정의되지 않은'오류 일 수 있습니다.

분류에서Dev

GridView에서 행 삭제, 개체가 개체 참조로 설정되지 않았습니다.

분류에서Dev

균일 한 버퍼 개체가 정렬되지 않았습니다. GLSL 액세스가 끊어졌습니다.

분류에서Dev

포착되지 않은 ReferenceError : 클래스가 정의되지 않았습니다.

분류에서Dev

개체가 삭제되지 않았는지 테스트

분류에서Dev

개체가 정의되지 않았습니다.-자바 스크립트

분류에서Dev

스타일 클래스의 BackgroundImage 객체가 트리거되지 않습니다

분류에서Dev

코드가 특정 순서로되어 있으면 파일이 삭제되지 않습니다.

분류에서Dev

Laravel Blade : HTML 체크 박스가 true로 설정되었지만 여전히 선택되지 않았습니다.

분류에서Dev

정의되지 않은 참조 또는 null 참조의 '스타일'속성을 가져올 수 없습니다.

분류에서Dev

CoreData 정보가 테이블 셀에 표시되지 않습니다.

분류에서Dev

개체에 데이터를 추가 할 때 개체가 '정의되지 않음'일 수 있습니다 .ts (2532)

분류에서Dev

개체의 인스턴스로 설정되지 않은 예외 개체 참조가 표시되는 이유

분류에서Dev

WM_TIMER 메시지가 호출되었지만 타이머가 설정되지 않았습니다.

Related 관련 기사

  1. 1

    PySide2 + QML : QApplication : 유효하지 않은 스타일 재정의가 전달되었습니다. 무시 함

  2. 2

    Django : 개체 ID가 있지만 개체가 미디어 파일에서 삭제되었습니다.

  3. 3

    컨텍스트 API 문제-개체가 정의되지 않았습니다.

  4. 4

    추가되었지만 git에 커밋되지 않은 파일을 삭제할 수 있습니까?

  5. 5

    __vfptr 테이블이 삭제되지 않은 개체에서 손상되었습니다.

  6. 6

    행 제거시 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.

  7. 7

    절인되지 않은 개체가 원본과 일치하지 않습니다.

  8. 8

    처리되지 않은 예외입니다. System.NullReferenceException : 개체 참조가 개체의 인스턴스로 설정되지 않았습니다.

  9. 9

    개체가 정의되지 않은 각도 단위 테스트 일 수 있습니다.

  10. 10

    MongoDB 개체는 데이터베이스에서 삭제되지 않습니다.

  11. 11

    자바 스크립트 : "정의되지 않음"은 개체가 아닙니다.

  12. 12

    .htaccess로 확장을 제거하지만 매개 변수를 유지하면 스타일이 지정되지 않은 페이지가 발생합니다.

  13. 13

    테스트 계정을 제공하지 않았기 때문에 메타 데이터가 거부되었지만 내가 할 수있는 일은 없습니까?

  14. 14

    체크 박스가 Mac Chrome에서 스타일이 지정되지 않음

  15. 15

    Facebook 개체의 일부가 정의되지 않은 것으로 표시되지만 정의되지 않은 것은 아닙니다.

  16. 16

    선택적 체인 Typescript에서 개체가 '정의되지 않은'오류 일 수 있습니다.

  17. 17

    GridView에서 행 삭제, 개체가 개체 참조로 설정되지 않았습니다.

  18. 18

    균일 한 버퍼 개체가 정렬되지 않았습니다. GLSL 액세스가 끊어졌습니다.

  19. 19

    포착되지 않은 ReferenceError : 클래스가 정의되지 않았습니다.

  20. 20

    개체가 삭제되지 않았는지 테스트

  21. 21

    개체가 정의되지 않았습니다.-자바 스크립트

  22. 22

    스타일 클래스의 BackgroundImage 객체가 트리거되지 않습니다

  23. 23

    코드가 특정 순서로되어 있으면 파일이 삭제되지 않습니다.

  24. 24

    Laravel Blade : HTML 체크 박스가 true로 설정되었지만 여전히 선택되지 않았습니다.

  25. 25

    정의되지 않은 참조 또는 null 참조의 '스타일'속성을 가져올 수 없습니다.

  26. 26

    CoreData 정보가 테이블 셀에 표시되지 않습니다.

  27. 27

    개체에 데이터를 추가 할 때 개체가 '정의되지 않음'일 수 있습니다 .ts (2532)

  28. 28

    개체의 인스턴스로 설정되지 않은 예외 개체 참조가 표시되는 이유

  29. 29

    WM_TIMER 메시지가 호출되었지만 타이머가 설정되지 않았습니다.

뜨겁다태그

보관