Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.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
Objective c UITextView在动画后不响应触摸事件_Objective C_Ios_Xcode_Animation_Uitextview - Fatal编程技术网

Objective c UITextView在动画后不响应触摸事件

Objective c UITextView在动画后不响应触摸事件,objective-c,ios,xcode,animation,uitextview,Objective C,Ios,Xcode,Animation,Uitextview,如果展开视图,我正在执行动画以正确地将UITextView保持在屏幕底部。出于某种原因,如果我执行动画,则UITextView将停止响应触摸事件,因此不会显示键盘 我所做的就是: CGRect newSendTextView = self.commTextView.frame; newSendTextView.origin.y = (newSendTextView.origin.y + (height - self.defaultSize.size.height)); [UIView begi

如果展开视图,我正在执行动画以正确地将
UITextView
保持在屏幕底部。出于某种原因,如果我执行动画,则
UITextView
将停止响应触摸事件,因此不会显示键盘

我所做的就是:

CGRect newSendTextView = self.commTextView.frame;
newSendTextView.origin.y = (newSendTextView.origin.y + (height - self.defaultSize.size.height));

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:.5];
self.commTextView.frame = newSendTextView;
[UIView commitAnimations];
我知道在我进行转换后,
UITextView
仍在屏幕上,因为我将
UITextView
背景涂成了亮蓝色,但它不想响应任何触摸事件

如果我注释掉self.commTextView.frame=newSendTextView使其不移动,触摸事件寄存器

我不知道为什么会这样,我试过了

[self.commTextView becomeFirstRespond];

我已经检查了
isEditable
isUserInteractionEnabled
是否设置为
1
,并且它是。

我猜,
TextView
的新位置可能被其他视图覆盖了。检查任何其他
视图
在您的
文本视图
新位置上是否具有相同的帧。使用
clipstobunds
属性查找它。

UITextView前面是否有任何对象?也许您有一个透明的UIView,在这种情况下您无法访问它it@MouhamadLamaa没有,我查过了。没有透明的视图,在IB文本视图中,视图位于每个项目的前面。您的回答帮助我找到了答案。似乎我没有扩展包含这些视图的UIView,因此它们没有响应触摸事件。我不知道如果一个视图在它的superview之外,它仍然会显示在屏幕上。。。谢谢Arthan@Alan:你是如何解决这个错误的?我也有类似的问题@FahimParker基本上textview不在包含其。例如,如果将textview添加到(0,0,100,100)的视图中。如果我让textview转到(150、150、100、100),它仍然会显示在屏幕上,因为它在iPhone屏幕的范围内。但是,如果textview不在其添加到的UIView的范围内,它将不会响应触摸事件。基本上,我所做的就是调整其父视图的大小,以便UITextview始终保持在范围内。