我正在将Mac应用程序移植到iPhone上,但我遇到了意想不到的问题。
在Mac上有一个文本字段,当对话框出现时,该文本字段会自动预选(=第一响应者)。文本字段显示您上次在字段中输入的文本,并且文本已预先选定,因此如果您刚开始输入,则会将其清除。如果您想要编辑现有文本,只需点击向前或向后箭头。
在iPhone上,这种行为似乎很难实现。文本视图显示旧文本,我甚至可以预先选择它,但无论我做什么,结果都不太正确。
当我使用
时[aTextView setMarkedText: myText
selectedRange: newRange];
文本确实显示为已标记,如果我刚开始输入旧文本就会消失。然而,没有相当于iOS上的光标键,所以我不能删除文本..这不是重点。
什么样的iOS习惯用于提供编辑或覆盖现有文本的选项?
致以最诚挚的问候,
谢
答案 0 :(得分:1)
在UITextViewDelegate
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{
dispatch_async(dispatch_get_main_queue(), ^{
[textView selectAll:self];
});
return YES;
}