2011-08-10 11 views
8

काम कर रहा है क्या कोई मुझे UIScrollView के साथ ज़ूम करने में मदद कर सकता है?UIScrollView में ज़ूमिंग

मैं एक यूआरएल से प्राप्त तीन छवियों को जोड़ने की कोशिश कर रहा हूं और इसे UIScrollView का उपयोग करके प्रदर्शित करता हूं। मैं प्रदर्शन भाग कर सकता हूं लेकिन ज़ूमिंग काम नहीं कर रहा है। मुझे उम्मीद है कि कोई मुझे कुछ रोशनी दिखा सकता है।

मेरे ज फ़ाइल

@interface TestScrollViewViewController : UIViewController <UIScrollViewDelegate>{ 

IBOutlet UIScrollView *scrollView; 
UIImageView *subview; 

} 

@property (nonatomic, retain) UIScrollView *scrollView; 
@property (nonatomic, retain) UIImageView *subview; 

@end 

मीटर फ़ाइल

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    UIImage *page1 = [[UIImage alloc] initWithData:[[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://abc.com/001.jpg"]]]; 
    UIImage *page2 = [[UIImage alloc] initWithData:[[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://abc.com/002.jpg"]]]; 
    UIImage *page3 = [[UIImage alloc] initWithData:[[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://abc.com/003.jpg"]]]; 


    NSArray *images = [NSArray arrayWithObjects: page1, page2, page3, nil]; 
    for (int i = 0; i < images.count; i++) { 
    CGRect frame; 
    frame.origin.x = self.scrollView.frame.size.width * i; 
    frame.origin.y = 0; 
    frame.size = self.scrollView.frame.size; 

    subview = [[UIImageView alloc] initWithFrame:frame]; 
    subview.image = [images objectAtIndex:i]; 

    self.scrollView.minimumZoomScale=0.5; 
    self.scrollView.maximumZoomScale=6.0; 
    self.scrollView.delegate=self; 

    [self.scrollView addSubview:subview]; 

    [subview release]; 
} 

self.scrollView.contentSize = CGSizeMake(self.scrollView.frame.size.width * images.count, self.scrollView.frame.size.height); 

} 

और इस viewForZoomingInScrollView विधि

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView 
{ 
    return self.scrollView; 
} 

सच आशा किसी की मदद कर सकते है। धन्यवाद।

लॉरेंस

+1

यदि समस्या अभी भी इस प्रश्न का पालन करती है तो http://stackoverflow.com/questions/6566996/with-uiscrollview-zoom-images-in-layout-frame/6567199#6567199 – rptwsthi

उत्तर

16

बदलें

return self.scrollView; 

साथ

return subview; 
+0

मैं भी इसके लिए वही +1 सोचता हूं:) – rptwsthi

3
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView 
{ 
    return self.scrollView; 
} 

कि क्या गलत है है। आप यहां स्क्रॉल व्यू को वापस नहीं लौट सकते हैं, आपको इसे सबव्यूव वापस करना होगा जिसे आप ज़ूम करना चाहते हैं।

+1

आपके तरह के उत्तर के लिए धन्यवाद दोस्तों और मैं अब ज़ूमिंग कर सकता हूं, लेकिन केवल आखिरी तस्वीर के साथ काम करता है, कोई विचार क्यों ऐसा होगा और इसे कैसे ठीक किया जाए? – LawrenceH