簡體   English   中英

點擊時將UIImageView鏈接到URL

[英]UIImageView linking to URL when tapped

我有某種圖像滑塊來顯示一些促銷圖像(“促銷”)。 我使用了在附近某處找到的代碼段。 它通過使用帶有框架的UIImageViews填充scrollView的方式工作,並使用UIScrollViewDelegate方法和PageControl方法向左和向右移動。 這是設置頁面的代碼的一部分:

-(void)setupPage{
    [scrollView setDelegate:self];
    [self.scrollView setBackgroundColor:[UIColor blackColor]];
    [scrollView setCanCancelContentTouches:NO];

    scrollView.indicatorStyle = UIScrollViewIndicatorStyleWhite;
    scrollView.clipsToBounds = YES;
    scrollView.scrollEnabled = YES;
    scrollView.pagingEnabled = YES;

    //cargar fotos
    CGFloat cx = 0;
    for (id row in promosArray) {
        NSLog(@"imagen %@", [row url]);
        UIImage *image = [row foto];
        //image = [image imageRotatedByDegrees:90.0f];
        UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
        CGRect rect = imageView.frame;
        rect.size.height = image.size.height;
        rect.size.width = image.size.width;
        rect.origin.x = ((scrollView.frame.size.width - image.size.width) / 2) + cx;
        rect.origin.y = ((scrollView.frame.size.height - image.size.height) / 2);

        imageView.frame = rect;
        [imageView setUserInteractionEnabled:YES];

        [scrollView addSubview:imageView];
        cx += scrollView.frame.size.width;
    }
    self.pageControl.numberOfPages = [promosArray count];
    [scrollView setContentSize:CGSizeMake(cx, [scrollView bounds].size.height)];

    [cargando setHidden:YES];
    [scrollView setHidden:NO];
    [pageControl setHidden:NO];

}

我從promosArray中獲取信息,它是帶有此標頭的promo類型的對象的數組

@interface Promo : NSObject
@property (strong, nonatomic) UIImage *foto;
@property (strong, nonatomic) NSURL *url;

-(id) initWithUIImage: (UIImage *) f andNSURL: (NSURL *) u;
@end

因此,促銷只是一個對象,既可以容納應顯示的UIImage,也可以包含在點擊時鏈接到的URL。

所以我的問題是,當“內部”觸摸時,如何使UIImage打開帶有相應URL的野生動物園窗口? 我嘗試添加一個與子視圖具有相同框架的按鈕,但我只有一個按鈕(或者它們都位於同一位置)

使我最復雜的想法是將每個按鈕與其對應的URL鏈接起來。

謝謝!

考慮使您的照片成為繼承自UIImageView的類。

這樣,您可以像在迭代器中一樣進行設置,還可以上交NSUrl(使其成為照片的責任而不是客戶端代碼)。 然后,不僅可以通過自動添加UITapGestureRecognizer來擴展此新(F)oto類的邏輯,並通過打開野生動物園窗口使其對用戶做出響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM