我正在尝试在我的应用程序中创建一堆UIImageViews,我可以无限期地触摸uiimageview将其移动到屏幕上并将其放在任何地方,在原始位置仍然会有UIImageview的表示,我可以去抓取另一个uiimageview移动它等等。我试图解决这个问题的方法是在IB中创建一个uiimageview,它将保留在其原始位置,每次在其上检测到触摸时,在同一位置创建一个新的uiimageview那将是可以被移动的。这是我到目前为止的代码:
-(void)dispatchTouchEvent:(UIView *)theView toPosition:(CGPoint)position
{
switch (glyphActive) {
case 1:
UIImage *image = [UIImage imageNamed:@"1.png"];
onePieceCopy = [[UIImage alloc] initWithImage:image];
onePieceCopy.frame = CGRectMake(currentPos.x, currentPos.y, 75, 75);
[self.view addSubview:image];
if (CGRectContainsPoint([onePiece frame], position)) {
onePiece.center = position;
[self bringSubviewToFront:onePiece];
}
//[onePieceCopy release];
break;
}
}
然而我在这一行上遇到错误:
UIImage *image = [UIImage imageNamed:@"1.png"];
表示“'UIImage'之前的预期表达”。 还有一个错误:
[self.view addSubview:image];
表示“错误:请求成员'视图'的东西不是结构或联合”
我对这一切都很陌生而且我不确定我做错了什么可以让我帮忙?
答案 0 :(得分:3)
为完整起见,无法在switch语句中声明变量。如果你在switch语句之前声明UIImage,你应该没问题。
如果您需要详细信息,请查看此链接:
Why can't variables be declared in a switch statement?
答案 1 :(得分:1)
好的一件事[self.view addSubview:image]
应为[theView addSubview:image]