使用 UIButton 从 UIPickerView 向 UILabel 显示输出

Posted

技术标签:

【中文标题】使用 UIButton 从 UIPickerView 向 UILabel 显示输出【英文标题】:Displaying output to a UILabel from UIPickerView using a UIButton 【发布时间】:2014-03-19 17:34:02 【问题描述】:

作为 Objective-C 课程的一部分,我正在开发 Country and Capitals 应用程序。

到目前为止,当用户在选择器中选择一个国家时,相关的首都会显示在下面的标签中。

我的问题是如何编码,以便只有在用户单击“获取资本”按钮后才会显示首都。

我知道这似乎效率较低,但知道如何做会很有用!

SIMULATOR PIC

countryNames =[[NSArray alloc]initWithObjects:@"England",
                                              @"United States",
                                              @"India",
                                              @"Australia",
                                              @"Canada",
                                              @"France",
                                              @"The Netherlands",
                                              @"South Africa",nil];
cityNames =[[NSArray alloc]initWithObjects:@"London",
                                           @"Washington DC",
                                           @"Dehli",
                                           @"Canberra",
                                           @"Ottawa",
                                           @"Paris",
                                           @"Amsterdam",
                                           @"Cape Town",nil];

-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component

lblcapitalCity.text =[cityNames objectAtIndex:row];

// 不确定如何在点击按钮后只显示城市

【问题讨论】:

不要在 didSelectRow 中做任何事情。创建一个按钮并附加一个动作,根据[pickerView selectedRowInComponent:0] 分配 lblCapitalCity.text 感谢@David,但在阅读您的解决方案后我仍然不明白。我应该对:-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component 进行哪些更改,我应该在这里编写什么代码:- (IBAction)getCapitalButton:(id)sender 【参考方案1】:

完全消除您的pickerView:didSelectRow:inComponent: 并将此操作用于按钮:

-(IBAction)getCapitalButton:(id)sender

    lblCapitalCity.text = cityNames[[pickerView selectedRowInComponent:0]];

【讨论】:

以上是关于使用 UIButton 从 UIPickerView 向 UILabel 显示输出的主要内容,如果未能解决你的问题,请参考以下文章

使用 UIButton 从其他 UIViewController 中删除一行

如何在按住手指的同时从使用一个 UIButton 切换到另一个?

从 UITableViewCell 中的 UIButton 触发 Segue

如何在 UIToolbar 完成按钮中将焦点从一个 UIButton 设置到另一个 UIButton

使用 UIButton 从 UIPickerView 向 UILabel 显示输出

使用时间和动画从字符串数组中更改 UILabel/UIButton 文本