Cocoa touch 如何使用cocoa关注替代标签?

Cocoa touch 如何使用cocoa关注替代标签?,cocoa-touch,Cocoa Touch,我仍然是iPhone开发的不速之客,所以很抱歉这个愚蠢的问题。我正在创建一个具有自定义数字键盘的应用程序。我有一个iAction“buttonDigitPressed”,当按下一个数字时,它只会将该数字添加到UILabel中。现在我有另一个标签,我想做同样的事情,但我不知道如何获得该特定标签的“焦点”。我在第二个标签上放置了一个不可见的按钮,所以当按下时,我希望可以调用一个操作,将键盘从第一个标签切换到第二个标签。但我不知道如何做到这一点。任何帮助都将不胜感激 首先,必须在UILabel上放置一

我仍然是iPhone开发的不速之客,所以很抱歉这个愚蠢的问题。我正在创建一个具有自定义数字键盘的应用程序。我有一个iAction“buttonDigitPressed”,当按下一个数字时,它只会将该数字添加到UILabel中。现在我有另一个标签,我想做同样的事情,但我不知道如何获得该特定标签的“焦点”。我在第二个标签上放置了一个不可见的按钮,所以当按下时,我希望可以调用一个操作,将键盘从第一个标签切换到第二个标签。但我不知道如何做到这一点。任何帮助都将不胜感激

首先,必须在UILabel上放置一个不可见的按钮是很卑鄙的。如果您希望用户能够点击一个数字,表示“下次我点击一个数字时,将其值附加到此数字”,那么如果您从一开始就使用UIButton,您可能会更高兴。您可以制作一个看起来很像UILabel的UIButton(即,它没有边框或背景色)。要在代码中设置UIButton的标题,请使用UIControlStateNormal状态调用setTitle:forState:。现在你有了可点击的数字,也就是这些按钮


好吧,现在让我们假装你有,比如说,三个按钮。这里需要使用一个实例变量。所以,每个按钮都有一个动作——比如说doButton:(id)sender。因此,doButton将在实例变量中存储sender(刚刚按下的按钮)的值。现在,您的buttonDigitPressed操作只是查看该实例变量,以了解要附加到哪个按钮。这是实例变量功能的一部分——它们为类中的方法提供了一个存储值的位置,同一类中的另一个方法可以从中获取值。

但是(评论我自己的答案)我还想指出,您可以使用UIExtFields,而不是UILabel或UIButton。毕竟,这就是他们的目的!用户点击其中一个,键盘就会自动出现,现在用户正在编辑该文本字段。另外,您还可以指定自定义键盘。只是一个想法…谢谢你的信息!我很想使用UITextFields,但我找不到完全禁用键盘的方法,因为我使用的是自定义键盘。我尝试了“resignFirstResponder”,但这似乎不起作用。有没有办法实现这一点?将自定义键盘视图指定给UITextField作为其inputView。