Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在iOS键盘上方附加自定义警报视图_Ios_Swift_Uikit_Uialertview - Fatal编程技术网

在iOS键盘上方附加自定义警报视图

在iOS键盘上方附加自定义警报视图,ios,swift,uikit,uialertview,Ios,Swift,Uikit,Uialertview,我正在尝试设计(一个“正确设计的”,而不是“黑客”)自定义警报视图。视图应连接到键盘顶部;使用键盘向上滑动(如果有警报)或被隐藏(如果没有警报) 视图应始终“粘住”键盘。。。包括,例如,当键盘隐藏时。在这种情况下,视图应该与键盘一起向下滑动,使其看不见 下面是我试图实现的一个示例(使用活动警报): 我最初考虑过将UIAlertView子类化,但看起来不推荐这样做。而且,经过一点试验,这显然是一项棘手的任务。我有一个警报出现了,但是,它变成了与键盘保持同步的问题,我还没有找到一种方法使它与键盘的

我正在尝试设计(一个“正确设计的”,而不是“黑客”)自定义警报视图。视图应连接到键盘顶部;使用键盘向上滑动(如果有警报)或被隐藏(如果没有警报)

视图应始终“粘住”键盘。。。包括,例如,当键盘隐藏时。在这种情况下,视图应该与键盘一起向下滑动,使其看不见

下面是我试图实现的一个示例(使用活动警报):

我最初考虑过将UIAlertView子类化,但看起来不推荐这样做。而且,经过一点试验,这显然是一项棘手的任务。我有一个警报出现了,但是,它变成了与键盘保持同步的问题,我还没有找到一种方法使它与键盘的运动“跟踪”。。。不顺利


有什么想法吗?

您可以通过
UITextField
UITextView
inputAccessoryView
实现这一点。有关更多信息,请参阅苹果的“iOS文本编程指南”一章

例如,可以使用以下代码在键盘上方添加一个非常简单的红色条:

let keyboardAlertView = UIView(frame:CGRectMake(0,0,320,44))
keyboardAlertView.backgroundColor = UIColor.redColor()
textField.inputAccessoryView = keyboardAlertView

您可以通过
UITextField
UITextView
inputAccessoryView
实现这一点。有关更多信息,请参阅苹果的“iOS文本编程指南”一章

例如,可以使用以下代码在键盘上方添加一个非常简单的红色条:

let keyboardAlertView = UIView(frame:CGRectMake(0,0,320,44))
keyboardAlertView.backgroundColor = UIColor.redColor()
textField.inputAccessoryView = keyboardAlertView

我最近也经历过类似的事情。。。我的解决方案是使用一个简单的UIView(用于警报)并注册
UIKeyboardWillHideNotification
UIKeyboardWillShowNotification
,其中UIView(用于警报)向上/向下滑动(帧的原点更改),动画与键盘移动相关联。你试过类似的东西吗?该通知将为您提供设置为accessoryView所需的所有内容(键盘高度、动画持续时间等)。David,是的–我正在做类似的事情,但今天早些时候偶然发现了inputAccessoryView。我实际上实现了一个基本的UIView,它基本上实现了您描述的功能。。。但是有小故障。inputAccessoryView运行良好,iOS可以处理大部分(全部?)动画。基本上,我只需要画一个包含我的警告的矩形,或者将其隐藏(视情况而定)。@Zac:我不知道accessoryView,我也会尝试的,谢谢!我最近也经历过类似的事情。。。我的解决方案是使用一个简单的UIView(用于警报)并注册
UIKeyboardWillHideNotification
UIKeyboardWillShowNotification
,其中UIView(用于警报)向上/向下滑动(帧的原点更改),动画与键盘移动相关联。你试过类似的东西吗?该通知将为您提供设置为accessoryView所需的所有内容(键盘高度、动画持续时间等)。David,是的–我正在做类似的事情,但今天早些时候偶然发现了inputAccessoryView。我实际上实现了一个基本的UIView,它基本上实现了您描述的功能。。。但是有小故障。inputAccessoryView运行良好,iOS可以处理大部分(全部?)动画。基本上,我只需要画一个包含我的警告的矩形,或者将其隐藏(视情况而定)。@Zac:我不知道accessoryView,我也会尝试的,谢谢!