Imageview必须专注于拍摄的图像

时间:2013-05-22 13:10:53

标签: iphone ios objective-c

我有一个像Image1,Image2,Image3,Image4,Image5

这样的数组

每次水平滚动到图像视图时随机显示图像。

每次An每次都会生成新系列。成功显示在单个图像视图上水平滚动。

Image2,Image1,Image3,Image5,Image4.

Image3,Image4,Image1,Image2,Image5.

Image4,Image2,Image3,Image1,Image5.

现在我希望Image View直接显示双击图像。

如果这是双击 Image1

的图像序列
Image3,Image4,Image1,Image2,Image5.

然后我想在他的位置直接显示 Image1 的图像视图 并自动添加Image3,Image4 backward.Image2,Image5。在前锋处加入。

我可以提前感谢你如何做到这一点。

我试过这个

   for(m=0; m<[FrontsCards count];m++)
        {
            ImgView.alpha=1;

            ImgView.tag=m;

            randIdx=arc4random()%[FrontsCards count];

            NSString *imageName=[FrontsCards objectAtIndex:randIdx];

            NSString *fullImageName=[NSString stringWithFormat:@"%@",imageName];

            int padding=0;

            CGRect imageViewFrame=CGRectMake(scrollView.frame.size.width*m+padding, scrollView.frame.origin.y, scrollView.frame.size.width-2*padding, scrollView.frame.size.height);

            ImgView=[[UIImageView alloc]initWithFrame:imageViewFrame];

            [ImgView setImage:[UIImage imageNamed:fullImageName]];

            [scrollView addSubview:ImgView];

            [ImgView setAccessibilityIdentifier:[FrontsCards objectAtIndex:randIdx]];


            UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doubleTapImgView:)];
            doubleTap.numberOfTapsRequired = 2;
            doubleTap.delegate = self;

            [self.ImgView setImage:[UIImage imageNamed:fullImageName]];

            [self.ImgView setTag:randIdx];


            [self.ImgView addGestureRecognizer:doubleTap];

            self.ImgView.userInteractionEnabled=YES;

            NSString *imageName1=[FrontsCards objectAtIndex:randIdx];

            [newArray addObject:imageName1];

        }
        CGSize scrollViewSize=CGSizeMake(scrollView.frame.size.width*[FrontsCards count], scrollView.frame.size.height);
        [scrollView setContentSize:scrollViewSize];
        [self.view addSubview:scrollView];

1 个答案:

答案 0 :(得分:0)

在这里遵循我的逻辑..

首先,当您点击任何图像时,首先将该图像添加到您的另一个温度NSMuatbleArray中,如下所示,然后将标记添加到每个图像。

[tempArray addObject:[yourArray objectAtIndex:selectedImage.tag]];

使用后的代号..

for (int i = 0; i < [yourArray count]; i++) 
{
        if (i != selectedImage.tag) 
        {
          [tempArray addObject:[yourArray objectAtIndex:i]];  
        }
}

之后使用tempArray

我希望你从这个逻辑中得到一些想法