在 iOS 上,有什么方法可以将视图(如子视图)放置在屏幕上的任何位置(主视图)?我正在向用户提供一个界面,他们可以将其放置在他们想要的任何地方(停靠视图)?
问问题
696 次
4 回答
1
尝试:
myView.frame = CGRectMake(x, y, width, height);
于 2012-04-30T12:42:03.267 回答
0
请遵循以下两个步骤:
1)。yourSubView.frame = CGRectMake(xOffset,yOffset,50,50);
2)。[self.view addSubview:yourSubView];
拖放:
如果您想拖动子视图,您可以使用它touchmethods:
来获取当前的 x 和 y 坐标并将它们动态填充到框架中。
喜欢:
-(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);
}
于 2012-04-30T12:43:37.543 回答
0
我建议使用平移手势识别器 (UIPanGestureRecognizer) 而不是使用 touchesBegan/touchesMoved/touchesEnded。它更容易和更清洁。
在 Xcode 文档中搜索“Touches”并查找具有该名称的示例应用程序。包含 2 个项目 - 一个使用手势识别器,另一个使用 touchesBegan/touchesMoved/touchesEnded。
它准确地显示了您需要做什么才能在屏幕上拖动视图。
于 2012-04-30T13:37:32.943 回答
0
myView.frame = CGRectMake(x, y, width, height);
定义 x,y,w,h;
myView.frame = CGRectMake(50, 50, 100, 100);
于 2012-04-30T13:31:11.677 回答