美文网首页
关于UIDatePicker的奇葩问题

关于UIDatePicker的奇葩问题

作者: 紫嫣沁 | 来源:发表于2021-09-07 16:26 被阅读0次

    最近写了一个项目,一个tableView上有很多行,其中有昵称,性别,生日,感情状况几行需要编辑,每一行都是UITextField。

    在性别那一行用的是一个自定义的view,直接加在屏幕上的;

    在生日那一行编辑时,用的是UIDataPickerView textField.inputView = self.datePicker;

    这时,当先点击生日吊起pickerView后,在点击性别,此时pickerView下不去,用了N多种方法,比如当点击性别时让self.view结束编辑,获取生日的那一行textField取消第一响应。。。都不行,没卵用,还一度以为是window的问题,后来我进行了认真比对,然后为了排除window的问题,我写了个小demo,就简单的在一个控制器里写了两个textField,一个点击时吊起pickerView,一个点击时显示自定义view,没想到问题居然照样重现了!这样的话,就排除了是window的问题,那么,就还是键盘的问题,我又看了下,当点击生日吊起pickerView后再点击昵称吊起自带的键盘,pickerView就会下去,但是再吊起性别的那个自定义view,pickerView就下不去。。。。。然后想了n久,加了一句代码,当点击性别的时候:

    textField.inputView =[[UIView alloc]init];

    把textField的inputView更改为一个空的view,然后再把自定义的view加载出来,没想到,居然好了!!!

    就是当键盘吊起过pickerView后然后再点击别的行,如果不是吊起键盘而只是要在父View上加一个自定义的view,那一定要再把键盘的inputView重置一下,才能把pickerView失去响应,隐藏下去。。

    好吧,就酱紫,另外,此时,点击性别时上一个pickerView会下去,同时自定义view会出现,不过有光标显示在textField出来,不想要光标显示出来的就自己找方法隐藏光标,另外在选择完性别后,view隐藏下去的时候要记得把该textField结束编辑,否则像我的上边的截图中,性别选择完view下去了还会有光标在,而且再点击就view就起不来了,因为textField仍处于编辑状态就不会进textFieldDidBeginEditing:代理方法

    相关文章

      网友评论

          本文标题:关于UIDatePicker的奇葩问题

          本文链接:https://www.haomeiwen.com/subject/iyslrxtx.html