我有一个带有UIImageView的CollectionView,图像在listImages数组中定义。
我正在尝试这样做,以便当您点击指定的图片时,您将被重定向到一个网站,其中包含更多相关信息。
但是,我不知道如何使用if子句获取图像的名称,并通过它给它一个链接。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
listImages = [NSArray arrayWithObjects:@"7513-kirjatkuivumassa.jpg", @"kuppi.jpg", @"kuva1.jpg", @"juna-042.jpg", @"rautio-valamonruusut-helleaamuna-maalaus.jpg", @"pysähtynyt1.jpg", @"Screen-Shot-2013-02-20-at-21.07.38.jpg", @"sateenkaari.jpg", @"Screen-Shot-2013-02-21-at-17.04.22.jpg", @"moninaiset-e1391026376696.jpg", @"Tomperi+Metsä20111.jpg", @"3-shinot.jpg", @"Ulpukat.jpg", @"janne-e1391025808211.jpg", @"martikainen-240x240.jpg", @"takala-240x240.jpg", @"paanukallokaarme1.jpg", @"käsityök-240x240.jpg", @"kuvis-004.jpg", @"Se-on-hieno-2012-tammi-105x28x223.jpg", nil];
}
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell *cell = [collectionView cellForItemAtIndexPath:indexPath];
if ([[cell.listImageView text] isEqualToString:@"7513-kirjatkuivumassa.jpg"]) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://website.com"]];
}
}
答案 0 :(得分:0)
请试试这个。
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
NSString *image_name= [listImages objectAtIndex:indexPath.row];
if ([image_name isEqualToString:@"7513-kirjatkuivumassa.jpg"]) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://website.com"]];
}
}
答案 1 :(得分:0)
我认为你的结构不是很好。你应该利用objective-C的力量,而不是自己尝试做事。我会按照以下步骤操作:
现在很容易做你想做的事情
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
yourObject *yourObject = [listImages objectAtIndex:indexPath.row];
[[UIApplication sharedApplication] openURL:yourObject.url]];
}