FUITextFieldFormCell.onChangeHandler无法捕获正确?

2020-08-20 23:47发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我正在使用FUIText...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在使用FUITextFieldFormCell创建"创建客户"表单,并使用示例在此处找到。 从文档上说

如果isTrackingLiveChanges == true,则将为每个输入的字母调用onChangeHandler。 否则,只有在用户点击"完成"键或该字段退出第一响应者之后,才会调用onChangeHandler。

我有本地变量,如示例中所示,它填充了onChangeHandler,但是如果我没有在最后输入的字段中输入内容,则不激活isTrackingLiveChanges参数就不会捕获该值。 不知道这是设计使然还是某种错误,但似乎是后者。 依靠用户始终点击完成是有风险的,并且根据我的经验-表中的单元格很少完成或输入,因此值不会填充到局部变量中。

使用isTrackingLiveChanges是最好的解决方案,还是应该在保存功能中循环遍历表并从FUITextFieldFormCell.value字段读取值? 不知道是否在没有完成/输入的情况下将更改提交了。

2条回答
My梦
2020-08-21 00:00 .采纳回答

我看了看内部结构,看起来好像可以添加一个resignFirstReponder()来改善这一点。

通常,isTrackingLiveChanges在许多情况下都很有用-实时验证,更新模型对象...实际上,除非每次更新模型都有效果链 ,无论如何,我可能都会指出您的方向。

导入UIKit
 导入SAPFiori

 struct Object {
     var productName:字符串=" A名称" {
         didSet {
             打印(" productName:\(productName)")
         }
     }
 }

 TableViewController类:UITableViewController {
     覆盖func viewDidLoad(){
         super.viewDidLoad()
         self.tableView.register(FUITextFieldFormCell.self,forCellReuseIdentifier:FUITextFieldFormCell.reuseIdentifier)
     }

     var myObject:Object = Object()

     覆盖func tableView(_ tableView:UITableView,cellForRowAt indexPath:IndexPath)-> UITableViewCell {

         让cell = tableView.dequeueReusableCell(withIdentifier:FUITextFieldFormCell.reuseIdentifier,for:indexPath)为!  FUITextFieldFormCell

         cell.keyName ="可编辑"
         cell.value = myObject.productName
         cell.isTrackingLiveChanges = true

        //MARK:实现onChangeHandler
         cell.onChangeHandler = {[[unown self] newValue in
             self.myObject.productName = newValue
         }
         返回单元
     }

     覆盖func numberOfSections(在tableView中:UITableView)-> Int {
         返回1
     }

     覆盖func tableView(_ tableView:UITableView,numberOfRowsInSection部分:Int)-> Int {
         返回1
     }
 }


 

一周热门 更多>