2012-04-30 3 views
0

На iOS, какой способ иметь возможность размещать представление, например, subView, в любом месте экрана (Main View)? Я предоставляю интерфейс пользователям, где они могут размещать его в любом месте (док-станции)?Как разместить subview в любом месте на экране, «Docking Views»

+0

Установите кадр этого подзапроса и добавьте его в супервизор, например: [self.view addSubview: yourSubview]; – Deviator

+0

Я хочу перетащить subview в любом месте экрана. –

ответ

0

Я бы рекомендовал использовать панорамирование жест распознаватель (UIPanGestureRecognizer) вместо использования touchesBegan/touchesMoved/touchesEnded. Это намного проще и чище.

Проведите поиск по «Прикосновениям» в документах Xcode и найдите пример приложения с этим именем. Включено 2 проекта: один использует распознаватели жестов, а другой использует touchBegan/touchesMoved/touchesEnded.

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

+0

большое спасибо Duncan C. –

1

Try:

myView.frame = CGRectMake(x, y, width, height); 
+0

Я хочу перетащить subview в любом месте экрана. –

+0

Взгляните на это: http://bynomial.com/blog/?p=77 – mprivat

0

Выполните следующие два шага:

1). yourSubView.frame = CGRectMake(xOffset,yOffset,50,50);

2). [self.view addSubview:yourSubView];

Перетаскивание:

Если и хочет, чтобы перетащить и перетащить подвиды и может сделать использование touchmethods: для получения текущей координаты х и у, и заполнить их в кадре динамически.

КАК:

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    UITouch *touch = [[event allTouches] anyObject]; 
    CGPoint location = [touch locationInView: touch.view]; 
    yourSubview.frame = CGRectMake(location.x, location.y, 50, 50); 
} 
+0

Я постараюсь ....! –

0
myView.frame = CGRectMake(x, y, width, height); 

Определить х, у, ш, ч;

myView.frame = CGRectMake(50, 50, 100, 100); 
+0

Попробуйте это ........ –

Смежные вопросы