개념 :userA
보고서 userB
내가 userA
반복적으로 동일한 사용자를보고 할 수 있도록 시간의 기간 동안 보고서 버튼을 비활성화해야합니다.해제 버튼을 탭 아이폰 OS
해결 방법 : key
가 String
report_userBId
및 value
같은 것 NSUserDefaults에서 저장 데이터 (유형 Double
의) 현재 날짜 후 24 시간 밖으로 타임 스탬프 것입니다. 이렇게하면 userA
이 다른 사용자에게보고 할 때마다 userA
이 이미 userB
으로보고되었는지 NSUserDefaults
을 확인합니다. 그렇다면 현재 시간이 저장된 시간 소인보다 큰지 확인한 후 NSUserDefaults
에서 데이터를 제거하고 사용자가 보고서를 보낼 수있게합니다.
아직이 솔루션을 구현하지 않았으며 이것이 NSUserDefaults가 최상의 솔루션 인 문제 유형인지 또는 코어 데이터와 같은 것을 사용해야하는지 알고 싶습니다.
나는 그것이 달려 있다고 생각합니다. 이미 코어 데이터를 사용하여 다른 데이터를 저장하고 있다면 몇 가지 타임 스탬프를 더 저장할 수 있습니다. 그렇다면 NSUserDefaults가 더 좋을 수도 있습니다. – Russell
@Russell 저는 ...이 프로젝트는 Core Data를 광범위하게 사용합니다. 보고 된 엔티티를 timestamp와 reportsUser의 id가 포함 된 이름으로 만들고,'reports' 속성을 ('NSSet'에 대한 타입의)'User' Entity에 추가하겠습니까? –
@Russel, 당신은 그가 그것을 받아 들일 수 있도록 상세한 답변을 작성해야합니다 ... CoreData에 대해 많이 알지 못합니다. 너무 복잡해졌습니다.] – Yitzchak