Вот дополнительная информация о моем расположении ... У меня есть табличное представление, которое, когда вы касаетесь ячейки в табличном представлении, добавляет в окно пользовательское представление с именем DraggableView в той же самой позиции, что и выбранная строка табличного представления, итот же размер.
РЕДАКТИРОВАТЬ: Вот как я добавил в представление подпредставление DraggableView.Этот код находится в пользовательском классе tableviewcell:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
UIView *topmostView = [[[super superview] superview] superview];
UITableView *parentTableView = (UITableView *)[self superview];
CGPoint draggablePoint = parentTableView.frame.origin;
CGSize draggableSize = parentTableView.frame.size;
draggablePoint.y += indexPath.row * 44;
dragView.frame = CGRectMake(draggablePoint.x, draggablePoint.y, draggableSize.width, 44);
[topmostView addSubview:dragView];
}
Это перетаскиваемое представление сделано таким образом, что оно перетаскивается.На назначенном инициализаторе он добавляет UIPanGestureRecognizer к представлению, чтобы вы могли перемещаться по нему.Я делаю это так:
- (void) activatePan {
UIPanGestureRecognizer *pan =
[[[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(panMove:)] autorelease];
[self addGestureRecognizer:pan];
}
- (void) panMove:(UIPanGestureRecognizer*)recognizer {
CGPoint touchLocation;
if (recognizer.state == UIGestureRecognizerStateBegan) {
currentFrame = self.frame;
touchLocation = [recognizer locationInView:self];
}
CGPoint translatedPoint = [(UIPanGestureRecognizer*)recognizer translationInView:self];
//The object is being moved across the screen
self.frame = CGRectMake(currentFrame.origin.x + translatedPoint.x, currentFrame.origin.y + translatedPoint.y, currentFrame.size.width, currentFrame.size.height);
}
Мне нужно, чтобы этот недавно созданный Draggable View имел фокус пользователя, когда его палец все еще находится в верхней части ряда.Это для перетаскиваемого вида, который можно перетаскивать после его создания.
Что происходит сейчас, так это то, что перетаскиваемый вид создан, но я должен отпустить палец и коснуться перетаскиваемого вида, чтобы панорамировать его.Я хочу пропустить шаг освобождения пальца и коснуться вида, чтобы я мог перетащить его, как только он будет создан.Есть идеи?