【问题标题】:property not being recognized in view controller视图控制器中未识别的属性
【发布时间】:2010-07-28 06:22:49
【问题描述】:

我有自定义 NSObjectNSNumber 属性。我正在尝试在包含自定义对象标头的视图控制器中设置和调用此属性。但是,视图控制器不会将该属性识别为“结构或联合中的某物”。我已经将这个NSNumber 属性与同一个自定义对象中的NSString 属性完全一样。我没有得到这些字符串的错误。

这是自定义对象的标题:

@interface IndividualsTab : NSObject {
    NSMutableArray *itemList;
    NSString *personsName;
    NSNumber *customTip;
}

@property (nonatomic, retain) NSMutableArray *itemList;  
@property (nonatomic, retain) NSString *personsName;
@property (nonatomic, retain) NSNumber *customTip;

这是视图控制器中的使用示例:

IndividualsTab *thisTab = [self.listOfPeople objectAtIndex:(tipBeingEdited - 20)];
thisTab.customTip = tipRate;

最后一行给了我一个错误。但是,对thisTab.personsName 的类似调用可以正常工作。我肯定会在自定义类的初始化代码中为这两个属性设置一个默认值。

有什么想法吗?

【问题讨论】:

  • 不知道。有什么错误? listOfPeople 来自哪里? tipRate 的类型是什么?它是指向NSNumber 的指针吗?
  • 你确定 thisTab 不是 nil 吗?
  • listOfPeople 是一个 NSMutableArray,其中填充了 IndividualsTab 的实例。是的,tipRate 是一个指向 NSNumber 的指针。 thisTab 不应该为零,但如果是,那将是运行时错误,而不是编译错误(这是我得到的),对吗?我得到的错误是“在不是结构或联合的东西中请求成员'customTip'。”感谢您帮助缩小范围,还有什么?

标签: iphone


【解决方案1】:

你记得@synthesize 你的属性吗?

【讨论】:

  • 是的,我有。在@implementation 之后。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-03-28
  • 2013-09-30
  • 1970-01-01
  • 1970-01-01
  • 2012-04-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多