• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

objective-c - 连接 UITextField 以更新标签

[复制链接]
菜鸟教程小白 发表于 2022-12-12 23:18:39 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我仍在开发我的转换器应用程序,但我又一次偶然发现了一个问题。

尝试在文本字段中进行所有编辑以触发计算代码时,没有发生任何事情。这就是 atm 发生的事情:

trying to enter numbers

在我更改 PickerWheel 中的某些内容之前,不会触发计算。我没有责怪代码,因为这就是我第一次制作它的方式。

在尝试解决此问题时,我得到了 friend 的帮助,并添加了以下代码以使其正常工作。

首先,

- (void)textFieldChangedUITextField *)textField
{
[self updateConversionLabel];
}

在 .m 的开头,以及在 .h 中的以下(我知道它的两个,那可能是错误的,但我想尝试两个。)

-(IBAction)textFieldChangedUITextField *)textField;
-(void)textFieldChangedUITextField *)textField;

计算如下:

#pragma mark -
#pragma mark PickerView Delegate

-(void)pickerViewUIPickerView *)pickerView didSelectRowNSInteger)row inComponentNSInteger)component
{
[self updateConversionLabel];
}

- (void)updateConversionLabel
{
float convertFrom = [[_convertRates objectAtIndex:[picker selectedRowInComponent:0]] floatValue];

float convertTo = [[_convertRates objectAtIndex:[picker selectedRowInComponent:1]] floatValue];

float input = [inputText.text floatValue];
float to = convertTo;
float from = convertFrom;

float convertValue = input;
float relative = to / from;
float result = relative * convertValue;

NSString *convertFromName = [_convertFrom objectAtIndex:[picker selectedRowInComponent:0]];
NSString *convertToName = [_convertFrom objectAtIndex:[picker selectedRowInComponent:1]];



NSString *resultString = [[NSString alloc]initWithFormat:
                          @" %.4f %@",result, convertToName];
resultLabel.text = resultString;

NSString *formelString = [[NSString alloc]initWithFormat:
                          @" %.4f %@=", convertValue, convertFromName];
formelLabel.text = formelString;


}

我认为错误可能出在界面生成器中,所以这里是连接 connections inspector

有没有简单的解决方案?



Best Answer-推荐答案


不要使用“Value Changed”操作,而是对文本字段使用“Editing Changed”。

关于objective-c - 连接 UITextField 以更新标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13016021/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap