无法设置对象 - 只读属性或未找到设置器

Posted

技术标签:

【中文标题】无法设置对象 - 只读属性或未找到设置器【英文标题】:object cannot be set - either read-only property or no setter found 【发布时间】:2010-03-17 18:16:06 【问题描述】:

我在简单地为 UI Button 赋值时遇到了麻烦:

//Assume rect is defined
rect = CGRectMake(13, 10, 48, 48);
profileButton = [[UIButton alloc] initWithFrame:rect];
profileButton.buttonType = UIButtonTypeCustom;

在尝试将 buttonType 分配给 UIButtonTypeCustom 时,我收到“无法设置对象 - 找到只读属性或设置器”。

【问题讨论】:

【参考方案1】:

这是因为buttonType 是只读属性。您只能使用buttonWithType: 创建特定类型的按钮。

profileButton = [[UIButton buttonWithType: UIButtonTypeCustom] retain];
profileButton.frame = CGRectMake(13, 10, 48, 48);

(不知道profileButton是什么,但假设它不是保留属性)

【讨论】:

成功了。初始化时我需要记住这一点。谢谢!

以上是关于无法设置对象 - 只读属性或未找到设置器的主要内容,如果未能解决你的问题,请参考以下文章

IE:无法获取属性“clientWidth”的值:对象为空或未定义

input用了jquery的时间控件时无法设置为只读属性,不能输入其他的内容

VBA Excel 错误对象变量或未设置块变量

js创建对象的最佳方式

JavaScript学习笔记2_面向对象

循环播放页面时出错。返回对象变量或未设置块变量