我有一个像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];
答案 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
我希望你从这个逻辑中得到一些想法