2011-10-30 13 views
0

UIScrollViewのサブビュー(ページ)を動的に作成できるかどうかは疑問でした。 私はただそれを持っている必要があります2 UILabel。 1つは上部に、もう1つは下部にあります。可能であれば、誰かに私に教えてもらえますか、チュートリアル/ビデオを教えてもらえますか?動的なuiscrollviewサブビューを作成する

私はチュートリアルを使用しましたが、とてもうまくいっています。しかしそれは底に1 UILabelしか持っていません。 そのリンクはここにありますhttp://www.iosdevnotes.com/2011/03/uiscrollview-paging/

これはほとんどの行為だと思います。

_objects = [[NSArray alloc] initWithObjects:@"",@"Does not include today", @"This does include today", @"Does not include today", @"This does include today", @"Includes the weekends!", nil]; 

_detailLabel1 = [[UILabel alloc] initWithFrame:CGRectMake(100.0, 0.0, 320.0, 460.0)]; 
_detailLabel1.textAlignment = UITextAlignmentCenter; 
_detailLabel1.font = [UIFont boldSystemFontOfSize:15.0]; 
_detailLabel1.textColor=[UIColor whiteColor]; 
_detailLabel1.backgroundColor=[UIColor colorWithWhite:(CGFloat)1 alpha:(CGFloat)0]; 


_detailLabel2 = [[UILabel alloc] initWithFrame:CGRectMake(320.0, 0.0, 320.0, 460.0)]; 
_detailLabel2.textAlignment = UITextAlignmentCenter; 
_detailLabel2.font = [UIFont boldSystemFontOfSize:15.0]; 
_detailLabel2.textColor=[UIColor whiteColor]; 
_detailLabel2.backgroundColor=[UIColor colorWithWhite:(CGFloat)1 alpha:(CGFloat)0]; 


_detailLabel3 = [[UILabel alloc] initWithFrame:CGRectMake(640.0, 0.0, 320.0, 460.0)]; 
_detailLabel3.textAlignment = UITextAlignmentCenter; 
_detailLabel3.font = [UIFont boldSystemFontOfSize:15.0]; 
_detailLabel3.textColor=[UIColor whiteColor]; 
_detailLabel3.backgroundColor=[UIColor colorWithWhite:(CGFloat)1 alpha:(CGFloat)0]; 
// We are going to show all the contents of the _objects array 
// using only these three UILabel instances, making them jump 
// right and left, replacing them as required: 

[scrollView addSubview:_detailLabel1]; 
[scrollView addSubview:_detailLabel2]; 
[scrollView addSubview:_detailLabel3]; 

私は他の場所に他のコードがありますが、これは私がそれの主要部分だと思うところです。

答えて

0

ラベルをスクロールビューに直接追加する代わりに。サブビューを作成し、サブビューにラベルを追加してからscrollviewに追加します。あなたの仕事は終わった。

あなたが参考にしたチュートリアルからコードを取り出しました。

NSArray *colors = [NSArray arrayWithObjects:[UIColor redColor], [UIColor greenColor], [UIColor blueColor], nil]; 
    for (int i = 0; i < colors.count; i++) { 
     CGRect frame; 
     frame.origin.x = self.scrollView.frame.size.width * i; 
     frame.origin.y = 0; 
     frame.size = self.scrollView.frame.size; 

     UIView *subview = [[UIView alloc] initWithFrame:frame]; 
     subview.backgroundColor = [colors objectAtIndex:i]; 
     [self.scrollView addSubview:subview]; 

_detailLabel1 = [[UILabel alloc] initWithFrame:CGRectMake(100.0, 0.0, 100.0, 40.0)]; 
_detailLabel1.textAlignment = UITextAlignmentCenter; 
_detailLabel1.font = [UIFont boldSystemFontOfSize:15.0]; 
_detailLabel1.textColor=[UIColor whiteColor]; 
_detailLabel1.backgroundColor=[UIColor colorWithWhite:(CGFloat)1 alpha:(CGFloat)0]; 
[subview addSubview:_detailLabel1]; 

_detailLabel2 = [[UILabel alloc] initWithFrame:CGRectMake(100.0, 300.0, 100.0, 40.0)]; 
_detailLabel2.textAlignment = UITextAlignmentCenter; 
_detailLabel2.font = [UIFont boldSystemFontOfSize:15.0]; 
_detailLabel2.textColor=[UIColor whiteColor]; 
_detailLabel2.backgroundColor=[UIColor colorWithWhite:(CGFloat)1 alpha:(CGFloat)0]; 
[subview addSubview:_detailLabel2]; 


     [subview release]; 
    }