【问题标题】:call void in IBAction在 IBAction 中调用 void
【发布时间】:2014-07-17 03:39:17
【问题描述】:

我有以下几点:

-(void)turnBlue:(DetailVC *) controller {
self.Label.text = controller.selected.name;
self.selected = controller.selected;
[controller.navigationController popViewControllerAnimated:YES];
    }

我正在尝试从我的 ibaction 进入:

- (IBAction)pressButton:(id)sender {
//filler code here
}

我在努力

[self turnBlue:selected];

但是我收到“发送不兼容的指针类型...”

我试过控制器,我缺少什么细节?

【问题讨论】:

  • selected 应该是DetailVC 的对象。
  • 准确完整的错误信息会很有帮助。
  • 您的转蓝方法期望 DetailVC 对象作为参数,而您正在传递选定的内容,这就是您收到错误的原因。见@“NeverHopeless”的回答。

标签: ios button text label


【解决方案1】:

应该是这样的:

// Allocate or get already created instance of `DetailVC`
DetailVC *controller = [[DetailVC alloc] initWithNibName..........];

// Pass instance to `turnBlue` function:
[self turnBlue:controller];

turnBlue 只能接受DetailVC 类型的参数,而您传递的selected 似乎不是DetailVC 类型,因此您收到了不可竞争的指针类型错误。

希望对你有帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多