gpt4 book ai didi

objective-c - 单击按钮时自动滚动 uipickerview

转载 作者:行者123 更新时间:2023-11-29 04:19:32 24 4
gpt4 key购买 nike

我正在使用 UIPickerView 来显示问题的答案。如果用户无法计算出正确答案,则需要有一个按钮来显示正确答案。我已尝试以下操作,但应用程序崩溃了。如何自动滚动到正确答案?

-(void)reveal {

[myPickerView selectRow:0 inComponent:0 animated:YES];

}

编辑:是的,我只是想让它滚动到上面示例中的第一个答案:)

[ExcerciseController Reveal:]:无法识别的选择器发送到实例 0x68398f02012-10-30 14:57:21.673 English[20786:f803] * 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[ExcerciseController Reveal:]:无法识别的选择器发送到实例 0x68398f0”* 首先抛出调用堆栈:(0x1397022 0x108ccd6 0x1398cbd 0x12fded0 0x12fdcb2 0x1398e99 0x1f214e 0x1f20e6 0x298ade 0x298fa7 0x298266 0x2173c0 0x2175e6 0x1 fddc4 0x1f1634 0x21a3ef5 0x136b195 0x12cfff2 0x12ce8da 0x12cdd84 0x12cdc9b 0x21a27d8 0x21a288a 0x1ef626 0x2c5d 0x2b85)终止调用抛出异常[切换到进程20786线程0xf803]

最佳答案

现在,错误/崩溃消息是可见的,事实证明错误并不在于您调用选择器方法的方式。这就是您调用 reveal 的方式。

你用某个对象调用reveal。或者您通过传递选择器来调用它。但是,您当前调用的选择器是 reveal:,但方法名称是 reveal,不带任何参数。 reveal: 需要一个参数。

无论您在哪里调用它,请确保您调用的是 reveal 而不是 reveal:

我假设您在界面生成器中或以编程方式创建按钮时设置选择器。这就是你犯错误的地方。

一些背景:错误消息告诉您需要了解的内容。在 Objective-C 中,运行时的方法名称称为选择器。在某些文献中,您会发现消息的措辞(在您的情况下名为 reveal:)被发送到在您的情况下名为 ExcerciseController 的接收者。

Objective-C 是多态的。这意味着 reveal (不带任何参数调用)引用的是另一种方法实现,而不是 reveal: (使用一个参数调用)甚至 reveal:: (用三个参数调用)。

关于objective-c - 单击按钮时自动滚动 uipickerview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13141558/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com