5

これがUITextViewの私のコンテンツです...

==>「視覚的ディテールと味に注意を払って調理された絶妙な料理を提供する「メトロポリタン」ダイニング体験。」

私の質問はシンプルで短く、テキストビュー内で「経験」という単語の場所(x、y)を見つける方法です。

どんな解決策でも大歓迎です。

4

3 に答える 3

3

Swiftで必要な場合はこれを試してください

    let range: NSRange = (txtView.text as NSString).range(of: text)
    let beginning: UITextPosition? = txtView.beginningOfDocument
    let start: UITextPosition? = txtView.position(from: beginning!, offset: range.location)
    let end: UITextPosition? = txtView.position(from: start!, offset: range.length)
    let textRange: UITextRange? = txtView.textRange(from: start!, to: end!)
    let rect: CGRect = txtView.firstRect(for: textRange!)
于 2018-06-22T11:03:57.003 に答える
2

sizeWithFont を使用すると、次のようになります。

NSString *text = textView.text;
NSString *substring = [text substringToIndex:[text rangeOfString:@"experience"].location];
CGSize size = [substring sizeWithFont:textView.font];
CGPoint p = CGPointMake((int)size.width % (int)textView.frame.size.width, ((int)size.width / (int)textView.frame.size.width) * size.height);
于 2013-01-17T10:04:20.807 に答える