0

可能重复:
UITableView 和键盘滚动问题

UIView其中我有它的子视图UITableView,并且在UITableViewCells我有UITextView用户可以输入文本的地方,现在我想获取用户当前点击的那个UITextView的位置。

UIToucheBegan没有从UITableView调用UIView的子视图。

4

3 回答 3

1

你可以做的是:

  1. 将您的视图控制器设置为 UITextView 委托。
  2. 开始编辑时,遍历 UITextView 超级视图,直到找到 UITableViewCell。
  3. 使用 UITableViewCell 框架属性来确定其位置(与 UITableView.contentOffset、UITableView.frame 和您的主容器 UIView.frame 一起)以获取 UITextView 相对于 UIView(或您想要的任何视图)的位置。

或者

  1. 向 UITableView 添加轻击手势识别器。
  2. 在目标方法中,用于[tapGestureRecognizer locationInView:myTableView]获取相对于 UITableView 内容的点击。
  3. 使用 UITableView indexPathForRowAtPoint: 方法,然后使用 cellForRowAtIndexPath: 来获取 UITableViewCell。从那里,做上面的(3)。
于 2012-12-15T13:19:59.963 回答
0

子类 UITableView ,然后在该子类中实现 touchesBegan 如果你想触摸 tableview

于 2012-12-15T14:43:12.367 回答
0

尝试在 cellForRowAtIndexPath 方法中向 textField 添加标签

然后在用户开始输入 UITextField 时调用的方法中查找 sender.tag

或者......也许为此制作 CustomCell 会更好

于 2012-12-15T14:35:49.183 回答