Dans un de mes viewController, j'ai un ScrollView, un UIView qui contient et UIImageView, UITextView etc. pour le scrollview est ici le code que je l'ai écrit:Comment travailler avec UIScrollView?
overViewScroll = [[UIScrollView alloc]initWithFrame:CGRectMake(0,0,screenFrame.size.width,screenFrame.size.height)];
[overViewScroll setCanCancelContentTouches:NO];
overViewScroll.pagingEnabled = YES;
overViewScroll.clipsToBounds = NO;
overViewScroll.indicatorStyle = UIScrollViewIndicatorStyleWhite;
[overViewScroll setContentSize:CGSizeMake(screenFrame.size.width, screenFrame.size.height-25)];
[overViewScroll setScrollEnabled:YES];
[overViewScroll setAlwaysBounceVertical:YES];
[overViewScroll setShowsVerticalScrollIndicator:YES];
UIView * completeView = [[UIView alloc]initWithFrame:CGRectMake(0,0,screenFrame.size.width,screenFrame.size.height)];
UILabel* heading1 = [[UILabel alloc]initWithFrame:CGRectMake(5,0,310,30)];
heading1.text = name;
heading1.backgroundColor = [UIColor clearColor];
UIFont * headingFont = [UIFont fontWithName:@"HelVetica" size:15];
heading1.font = headingFont;
[completeView addSubview:heading1];
//NSSet * imageString = [projectHeroData valueForKey:@"imageURL"];
NSString * urlString = @"";
NSURL * url = [NSURL URLWithString:urlString];
NSData * imageData = [NSData dataWithContentsOfURL:url];
UIImage * projImage = [[UIImage alloc]initWithData:imageData];
UIImageView * imgView = [[UIImageView alloc]initWithFrame:CGRectMake(screenFrame.size.width/70,screenFrame.size.height/50,screenFrame.size.width-((screenFrame.size.width/70)*2),screenFrame.size.height/3)];
imgView.image = projImage;
imgView.backgroundColor = [UIColor blueColor];
[completeView addSubview:imgView];
UILabel * abstract = [[UILabel alloc]initWithFrame:CGRectMake(screenFrame.size.width/41,screenFrame.size.height/31 + screenFrame.size.height/3,screenFrame.size.width/4,screenFrame.size.height/30)];
abstract.text = @"Abstract-";
abstract.font = [UIFont boldSystemFontOfSize:fontSize];
abstract.backgroundColor = [UIColor clearColor];
[completeView addSubview:abstract];
UILabel * lastUpdated = [[UILabel alloc]initWithFrame:CGRectMake(screenFrame.size.width/41 + screenFrame.size.width/5,screenFrame.size.height/31 + screenFrame.size.height/3,screenFrame.size.width-screenFrame.size.width/4,screenFrame.size.height/30)];
NSString * string = modDate ;
NSString * updated = [NSString stringWithFormat:@"Last Updated-%@",string];
lastUpdated.text = updated;
lastUpdated.backgroundColor = [UIColor clearColor];
lastUpdated.font = [UIFont boldSystemFontOfSize:fontSize];
[completeView addSubview:lastUpdated];
UITextView * textView2 = [[UITextView alloc]initWithFrame:CGRectMake(screenFrame.size.width/70,(screenFrame.size.height/31 + screenFrame.size.height/3)+screenFrame.size.height/30,screenFrame.size.width-screenFrame.size.width/70*2,screenFrame.size.height)];
textView2.text = abst;
textView2.editable = NO;
textView2.font = [UIFont systemFontOfSize:fontSize];
textView2.backgroundColor = [UIColor clearColor];
[completeView addSubview:textView2];
[overViewScroll addSubview:completeView];
[self.view addSubview:overViewScroll];
tout est addded au UIView et UIView est ajouté à l'UIScrollView. Mais le problème est qu'il se comporte bizarrement, l'image ne défile pas tout le long et le texte dans Textview défile lui-même. S'il vous plaît aider !!
changez le contenu de votre scrollview – ajay
que devrais-je augmenter ou diminuer ?? – Ashutosh
chaque fois que vous voulez faire défiler alors le contenu scrollview doit être supérieur à sa sous-vue.means dans votre cas uiview taille de l'image est inférieure à l'uiscrollview – ajay