スクロールビューの下にイメージビューがあります。画像を持つイメージビューで。スクロールビューから特定の画像をクリックすると、画像がカメラビューのオーバーレイとして表示されます。オーバーレイ画像の削除には doubleTap を使用しました。ダブルタップを使用すると、オーバーレイ画像がスーパービューから削除されます。その後、スクロールビューを表示して別の画像を選択すると、画像がcameraView(オーバーレイ)に表示されません
コード:
ダブルタップのジェスチャー:
UITapGestureRecognizer *doubletap=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(doubleTap:)];
doubletap.numberOfTapsRequired=2;
[myImageView addGestureRecognizer:doubletap];
UITapGestureRecognizer *doubletap1=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(doubleTap1:)];
doubletap1.numberOfTapsRequired=2;
[myImageView1 addGestureRecognizer:doubletap1];
ダブルタップの方法:
-(void)doubleTap:(UITapGestureRecognizer*)sender{
NSLog(@"image");
[myImageView removeFromSuperview];
}
-(void)doubleTap1:(UITapGestureRecognizer*)sender{
NSLog(@"image1");
[myImageView1 removeFromSuperview];
}
スクロールビューにイメージビューを追加:
-(void)unloadPreviousPage:(int)index
{
for(int i=index*4;i<(index+1)*4;i++)
{
[[myScrollView viewWithTag:i+1] removeFromSuperview];
}
}
-(void)loadNextPage:(int)index
{
int countFlag=0;
for(int i=index*4;i<(index+1)*4;i++)
{
UIButton *imageView=[[UIButton alloc]initWithFrame:CGRectMake((320*index)+countFlag*80+ 2, 5, 75, 75)];
imageView7.tag=i+1;
[imageView7 addTarget:self action:@selector(imageViewClicked:) forControlEvents:UIControlEventTouchUpInside];
//[imageView.layer setBorderColor:[UIColor lightGrayColor].CGColor];
// [imageView.layer setBorderWidth:1.0f];
switch ((i+1)%2) {
case 0:
[imageView setImage:[UIImage imageNamed:@"img.png"] forState:UIControlStateNormal];
break;
case 1:
[imageView setImage:[UIImage imageNamed:@"img1.png"] forState:UIControlStateNormal];
break;
}
[myScrollView addSubview:imageView];
countFlag++;
}
}
-(void)imageViewClicked:(id)sender{
switch ([sender tag]%2) {
case 0:
[myImageView setImage:[UIImage imageNamed:@"img.png"]];
break;
case 1:
[myImageView setImage:[UIImage imageNamed:@"img1.png"]];
break;
}
}