UISwitch 설정에서 파생 된 부울 값을 처리하는 가장 좋은 방법은 무엇이며 영구적 인 설정으로 사용자의 디렉터리에 저장되는 NSMutableDictionary에 저장됩니까? 특히, 부울 값을 파일 시스템에 쓰거나 읽는 NSMutableDictionary의 숫자 값과 구별하는 가장 좋은 방법은 무엇입니까?plist에서 영구 부울을 처리하는 가장 좋은 방법은 무엇입니까?
========
: Adrian과 Ben에게 감사드립니다. 그래서, 결과는 [NSNumber numberWithBool :] (이것은 내가 수행 한 것입니다)를 통해 저장하면 그 값이 부울 값으로 시작되었는지를 결정하는 편리한 방법이 없다는 것입니다.
이 두 번째 부분은 부울 값을 가진 plist를 통해 원래 작성한 NSMutableDictionary를 만드는 것입니다. 이 값들은 NSCFBoolean 클래스를 처음 읽었을 때 가지고 있습니다. 지금 당장의 전략은 사전에있는 값을 plist의 해당 엔트리와 비교하는 것입니다.
이 문제가 중요한 이유는 사용자가이 값을 조작 할 수 있도록 인터페이스 요소를 생성하고 있으며 부울을 UISwitch와 연관 짓고 있기 때문입니다. 번호로 변환하여 원래 클래스를 잃으면 부적절한 사용자 인터페이스 요소가 나타납니다.
배열을 저장된 값으로 대체하는 것이 좋습니다. 첫 번째 값은 저장된 값이고 나머지 항목은 선택 사항입니다. 두 개의 선택 항목이 존재하는 경우, 부울로 처리됩니다. 다른 경우에는, 피커 값으로 사용됩니다. 그러나 이것은 신뢰할 만하면 성 가해 보입니다.
모든 아이디어를 환영 ...
네, NSNumber에서 "objCType"메시지를 사용하십시오. 정수의 경우 "q", 부울 값의 경우 "c", 복식의 경우 "d"를 반환합니다. 나는 당신이 그것을 볼 수있는 방법을 보여줍니다 코드 스 니펫 아래에 내 대답을 편집했습니다. –