【发布时间】:2011-02-07 15:45:28
【问题描述】:
我想在不点击按钮的情况下将双选择器的内容显示到标签上。谁能告诉我这是如何完成的。
我在标签上显示计算,我希望它们随着用户移动选择器而改变。
【问题讨论】:
标签: iphone objective-c iphone-sdk-3.0 ios4 interface-builder
我想在不点击按钮的情况下将双选择器的内容显示到标签上。谁能告诉我这是如何完成的。
我在标签上显示计算,我希望它们随着用户移动选择器而改变。
【问题讨论】:
标签: iphone objective-c iphone-sdk-3.0 ios4 interface-builder
您需要设置一个UIPickerViewDelegate,将其设置为您的选择器的代表,并实现– pickerView:didSelectRow:inComponent: 以根据需要修改您的标签。 UIPickerViewDelegate 协议参考是here。我可能只是将包含视图的 viewController 设置为委托,但这取决于您的程序的结构。
编辑 - 添加示例代码:
您使用 表示法将一个类声明为实现委托协议,如下所示:
@interface MyViewController : UIViewController<UIPickerViewDelegate>
然后你可以像这样设置你的选择器视图实例的委托:
myPicker.delegate = myViewControllerInstance;
或者,如果您的选择器是 viewcontroller 类的 ivar:
myPicker.delegate = self;
然后,在您的 MyViewController 类的实现中,您可以选择实现 UIPickerViewDelegate 协议的方法,相应的消息将在正确的时间发送。例如,-pickerView:didSelectRow:inComponent:(如果在委托中实现)将在选择器选择值时调用,并且它将通过所选的行并选择该行中的组件。
【讨论】: