1

我正在尝试模拟分段控件,但我遇到了崩溃,有什么建议吗?

NSInteger selectedSegment = 2;
id segmentedControlMock = [OCMockObject niceMockForClass:[UISegmentedControl class]];
[[[segmentedControlMock stub] andReturn:OCMOCK_VALUE(selectedSegment)] selectedSegmentIndex];

我在模拟对象上调用 selectedSegmentIndex 后立即崩溃:

由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“预期调用对象返回类型。”

4

1 回答 1

2

你需要使用andReturnValue:

NSInteger selectedSegment = 2;
id segmentedControlMock = [OCMockObject niceMockForClass:[UISegmentedControl class]];
[[[segmentedControlMock stub] andReturnValue:OCMOCK_VALUE(selectedSegment)] selectedSegmentIndex];
于 2011-11-09T19:21:43.210 回答