Say you have a class named "Foo", then in "Foo_Framework.h", create:
@interface Foo() @property ....; - .... method .... @end
Then make sure that “Foo_Framework.h” is imported before @implementation Foo . This will compile the Foo class with the advanced interface found in the specified header file. This header can then be used throughout your structure. Just do not make it available outside the box.
You are right that you cannot declare properties (which are synthesized) in a category. This was one of the main motives for creating class extensions, an example of which is given above.
source share