Tipe skalar di Objek Terkelola hanya berfungsi untuk IPhone 5

Properti 'Latitude' adalah tipe skalar pada kelas 'LatitudeLongitude'. Tidak dapat menghasilkan metode penyetel untuk itu.

Saat saya membuat kode untuk objek terkelola, saya mendapat pesan apakah saya menginginkan properti skalar untuk tipe data primitif. haruskah saya menggunakannya? Saya ingin membuat aplikasi ini kompatibel dengan iPhone 3 - 5

apakah ada masalah dengan masalah ini?


person user4951    schedule 26.07.2011    source sumber


Jawaban (2)


Saat Anda menggunakan properti skalar, Anda harus menyediakan sendiri implementasi getter dan setter untuk properti tersebut, seperti yang dijelaskan dalam dokumentasi:

"Anda dapat mendeklarasikan properti sebagai nilai skalar, tetapi untuk nilai skalar Data Inti tidak dapat menghasilkan metode pengakses secara dinamis—Anda harus menyediakan implementasi Anda sendiri (lihat “Metode Pengakses Objek Terkelola”). Data Inti secara otomatis mensintesis metode pengakses primitif (primitiveLength dan setPrimitiveLength: ), tetapi Anda perlu mendeklarasikannya untuk menyembunyikan peringatan kompiler."

Dokumentasi

Di tempat ini saya akan merekomendasikan Anda untuk memeriksa posting ini core-data-scalars.

Saya harap saya telah membantu.

person lukewar    schedule 03.10.2011
comment
Persetan sekali dengan sifat skalar - person user4951; 05.10.2011
comment
Jadi properti skalar berarti propertinya akan menjadi double, float, dll, bukan NSNumber kan. - person Anonymous White; 23.10.2012
comment
Ya Haryanto, antarmuka objek model akan menjadi double, float, dll, tetapi sebenarnya akan diubah menjadi NSNumber dan kemudian disimpan ke store. - person lukewar; 24.10.2012
comment
pasca skalar data inti hilang sekarang - person malhal; 07.11.2014

Ini tidak benar, skalar telah lama didukung di Data Inti. Anda tidak perlu menerapkan pengakses khusus seperti yang ditunjukkan oleh banyak postingan blog di luar sana.

person quellish    schedule 27.03.2013