如何在UITextView中设置选择?

时间:2013-09-04 11:08:09

标签: ios uitableview uitextview

我有一个UITextView放在UITableViewCell内。要选择UITextView中的内容,我将使用以下代码。

[UITextView select:self];
[UITextView setSelectedRange:NSMakeRange(start,length)];

加载UITableView后,将调用以下方法

  1. numberOfRowsInSection:(NSInteger)section
  2. cellForRowAtIndexPath:(NSIndexPath *)indexPath
  3. heightForRowAtIndexPath:(NSIndexPath *)indexPath
  4. 我的问题是,我应该在哪里放置此代码以使UITextView得到关注。

    感谢您的回答。

3 个答案:

答案 0 :(得分:1)

您应该将代码放在viewDidAppear方法中。首先,将目标单元格滚动到视图中以使其可见:

scrollToRowAtIndexPath:atScrollPosition:animated:

然后,获取要将输入定向到的单元格:

cellForRowAtIndexPath:

现在将单元格转换为您的类型的单元格,抓住其UITextView,进行选择,最后将其重点放置。

答案 1 :(得分:0)

确保已实施

<UITextFieldDelegate>

然后将调用以下方法

-(void) textFieldDidEndEditing:(UITextField *)textField {

}

-(void) textFieldDidBeginEditing:(UITextField *)textField {

}

但你必须设置

textFiled.delegate = self;

答案 2 :(得分:0)

如果我理解你的问题,

如果你想在启动时关注textView,那么你需要将代码放在cellForRowAtIndexPath:(NSIndexPath *)indexPath中,因为你要将UITextView添加到UITableViewCell,并且在dataSource方法中创建/重用tableView单元。

如果您希望它专注于点击该行,那么请使用

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;

希望这有帮助。