2016-08-09 6 views
1

NSPredicate를 시도했지만 항상 0 응답을받습니다. 오류 코드를 확인하고 오류가 발생하는 곳에서 제안하십시오. soureceArray는 - {NSPredicate (nsdictionary + array + nsdictionary)

CityId = 0; 
TreatmentProgramServices =  (
      { 
     TreatmentServicesId = 9; 
     TreatmentServicesName = Coed; 
    }, 
      { 
     TreatmentServicesId = 1; 
     TreatmentServicesName = Intervention; 
    }, 
      { 
     TreatmentServicesId = 3; 
     TreatmentServicesName = Residential; 
    } 
); 
TreatmentProgrameId = 3; 

} 

filterTreatmentServices 어레이 카운트이다 : - {3}

NSPredicate* updatePre = [NSPredicate predicateWithFormat:@"(%K IN %@)",@"TreatmentProgramServices.TreatmentServicesId" ,filterTreatmentServices]; 

filterTreatmentService =[soureceArray filteredArrayUsingPredicate:updatePre]; 

용액 제안주세요

+0

N을 사용 SPredicate * updatePre = [NSPredicate predicateWithFormat : @ "TreatmentProgramServices.TreatmentServicesId == % @", @ "3"]]; –

+0

@balkaransingh TreatmentProgramServices.TreatmentServicesId TreatmentProgramServices의 문제는 그 이후에 배열이기 때문에 작동하지 않습니다. – shiv

+0

답을 확인하십시오 plz. –

답변

0

PLZ이

NSArray *filterArray=[soureceArray filteredArrayUsingPredicate:[NSPredicate predicateWithBlock:^BOOL(id _Nonnull evaluatedObject, NSDictionary<NSString *,id> * _Nullable bindings) { 
       return [[evaluatedObject valueForKey:TreatmentServicesId] == 3]; 
      }]]; 
+0

감사합니다 @ balkaran – shiv

+0

환영합니다 @shiv :) –