Scalar type in Managed Object only works for IPhon

2020-05-24 19:56发布

Property 'Latitude' is a scalar type on class 'LatitudeLongitude'. Cannot generate a setter method for it.

When I generated codes for my managed object, I got a message whether I want scalar properties for primitive data type. should I use it? I want to make this application compatible with iPhone 3 - 5

is there any issues with this problem?

2条回答
我想做一个坏孩纸
2楼-- · 2020-05-24 20:21

This is not true, scalars have been supported in Core Data out of the box for a long time. You do not have to implement custom accessors as many blog posts out there indicate.

查看更多
劫难
3楼-- · 2020-05-24 20:39

When you use scalar properties you have to provide implementations of getters and setters for those properties by yourself, as described in documentation:

"You can declare properties as scalar values, but for scalar values Core Data cannot dynamically generate accessor methods—you must provide your own implementations (see “Managed Object Accessor Methods”). Core Data automatically synthesizes the primitive accessor methods (primitiveLength and setPrimitiveLength:), but you need to declare them to suppress compiler warnings."

Documentation

At this place I would recommend you to check this post core-data-scalars.

I hope I have helped.

查看更多
登录 后发表回答