0

我昨天刚开始学习Objective-C,我不太明白这个警告:

Property access result unused - getters should not be used for side effects

使用此代码(第 3 行给出警告,self.addItem()):

- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    if (textField == self.itemTxt) {
        self.addItem;
        self.itemTxt.text = @"";
    }
    return YES;
}

- (IBAction)addItem {
    [self.model addItemToArray: _itemTxt.text];
    _itemTxt.text = @"";
}

为什么我会收到此警告?

4

2 回答 2

3

什么是添加项。根据您的代码,您似乎正在尝试调用该函数,因此请使用以下命令:

[self addItem];

基本上还有一件事,如果您深入了解 IBAction,您会发现它是无效的。通常,当我们想使用 IB 进行事件触发时,我们会使用 IBAction。

所以,你可以使用(如果你需要手动调用)

- (void)addItem {
    [self.model addItemToArray: _itemTxt.text];
    _itemTxt.text = @"";
}

希望,它将增强您的知识,并有助于您的警告。

于 2012-12-21T12:42:50.967 回答
1

调用函数使用

[self addItem];

当您使用 self.addItem 时,您正在访问一个名为 addItem 的变量。

于 2012-12-21T12:41:08.990 回答