2011-04-23 58 views
1

我有一個隱藏在名爲canTouchMe的另一個視圖下的UITextView。如何將觸摸傳遞給UITextView

現在,一旦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的的touchesBegan:倒是withEvent:方法事件];但那不起作用。

回答

1

我還沒有試過,但閱讀的文檔爲UITextView後,我會與此代碼玩:

[myUITextView scrollRangeToVisible:[myUITextView selectedRange]]; 

這應該滾動您可以在您感動,也許插入光標出現的地方。讓我知道如果這工作。

+0

對不起,我花了這麼長時間。我只是試過這個,但它不起作用(它對任何視圖都沒有影響)。我想我需要將currentPosition轉換爲selectedRange,但不能想到一個聰明的方法來做到這一點。 – 2011-04-26 09:45:07

相關問題