首页 > 其他 > 详细

在textFieldShouldEndEditing 方法中调用[self.tableView reloadData] 失效问题

时间:2016-11-08 17:04:16      阅读:397      评论:0      收藏:0      [点我收藏+]
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {

 

    NSString *value = [NSString stringWithFormat:@"%.2f", [textField.text floatValue]];

    if ([value floatValue] >= 1) {

        textField.text = value;

        [self calculateServiceFees];

    } else {

        self.values[@"xx"] = @"$0.00";

        self.values[@"xxx"] = @"$0.00";

        textField.text = ([value floatValue]>0.0)?value:@"";

//        [self.tableView performSelector:@selector(reloadData)];

        [self.tableView performSelectorOnMainThread:@selector(reloadData) withObject:nil waitUntilDone:NO];

//        [self.tableView reloadData];

    }

    return YES;

}

第一种解决方法:改成 performSelectorOnMainThread 调用刷新才成功。

第二种解决方法,就是放到 textFieldDidEndEditing 回调中处理

在textFieldShouldEndEditing 方法中调用[self.tableView reloadData] 失效问题

原文:http://www.cnblogs.com/shuleihen/p/6043477.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!