Как передать прикосновение к UITextView - PullRequest
1 голос
/ 24 апреля 2011

У меня есть UITextView, который скрыт под другим видом, называемым canTouchMe.

Теперь, когда вызывается canTouchMe, я вывожу UITextView на передний план и назначаю его первым респондентом. Тем не менее, я бы хотел, чтобы курсор размещался там, где пользователь касался экрана. Прямо сейчас курсор переходит в самый конец UITextView, даже если пользователь коснулся его самого начала.

- Есть ли способ передать касание в UITextView?

- Или есть способ сказать UITextView, чтобы поместить курсор рядом с currentPosition?

Вот мой код:

 - (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{

    [super touchesMoved:touches withEvent:event];

    UITouch *touch = [touches anyObject];
    CGPoint currentPosition = [touch locationInView:self.view];

    CGFloat deltaX = fabsf(gestureStartPoint.x - currentPosition.x); // will always be positive
    CGFloat deltaY = fabsf(gestureStartPoint.y - currentPosition.y); // will always be positive

    if (deltaY == 0 && deltaX == 0) {

        NSLog(@"Touch");


        [self.view sendSubviewToBack:canTouchMe];


        [textView becomeFirstResponder];


    }


}

Я пытался передать касание с помощью [textView touchsBegan: touch withEvent: event]; но это не сработало.

1 Ответ

1 голос
/ 24 апреля 2011

Я не пробовал это, но после прочтения документов для UITextView я бы поиграл с этим кодом:

[myUITextView scrollRangeToVisible:[myUITextView selectedRange]];

это должно прокрутить вас до места, к которому вы прикоснулись, и, возможно, вставить туда курсор. Дайте мне знать, если это сработало.

...