我试图将其放入我的视图对象的头文件中:

@property (nonatomic) UIColor color;

存储在此视图中绘制线条时应使用的 colored颜色 .

Xcode在这一行给了我一个错误:

无法静态分配接口类型

这是什么意思,我该怎么办?

编辑:

我添加了一个*,在合成的时候,它说:

ARC禁止合成具有未指定所有权或存储属性的目标C对象的属性?

推荐答案

变量用于对象类型,因此必须声明为指针:

@property (nonatomic) UIColor * color;    // Note the asterisk

在这种情况下,"静态分配"意味着该对象的内存是在编译时分配的.然而,Obj-C中的所有对象都是在运行时分配的,并通过指针访问.

"接口类型"是一个对编译器有意义的过于专业的术语,在这里并不十分重要.这意味着UIColor代表interface,编译器希望您通过它与变量color交互.指向的对象的实际类型可能会有所不同(比如class cluster之类的NSString).

Objective-c相关问答推荐

将 NSInteger 转换为 NSIndexpath

如何打印 NSMutableURLRequest?

我需要在 ARC 中使用 dealloc 方法吗?

iphone 的 UIPopoverController 不工作?

如何更改图像中的特定 colored颜色 ?

NSTimeZone:localTimeZone 和 systemTimeZone 有什么区别?

NSLocalizedString 格式

如何使用键值编码判断对象是否存在键?

如何将 UInt32 设置为最大值

带有 IB_DESIGNABLE 的 UIButton 会引发运行时属性警告,并且不会在 Interface Builder 中呈现

判断 NSInteger 是奇数还是偶数

当服务器上的图像文件更改时,我的应用程序中的 SDWebImage 缓存图像会发生什么情况?

如何四舍五入浮点值?

UITableView configureCellForDisplay:forIndexPath 中的断言失败:

Objective-C 实例变量?

iOS Buttons - 添加边框

我可以在 Objective-C switch 语句中声明变量吗?

使用 UINavigationController 在 UIPageViewController 中下推内容

AVAudioPlayer 不播放任何声音

Foo 类在 MyApp 和 MyAppTestCase 中都实现了.将使用两者之一.哪个是未定义的