2009-08-31 18 views
0

私は、AppStoreアプリのアプリ詳細画面のようなビューを作成する最良の方法を見つけようとしています。コンテンツが長すぎる場合はすべてサムネイルとテキストコンテンツをスクロールします。これはテーブルビューかスクロールビューで行われますか?アプリの詳細画面のようなスクロール表示

答えて

3

私はスクロールビューで1つ作成しました。私は各ラベルの後にそれを追加することにより、Yサイズの累計を維持

- (CGSize)sizeWithFont:(UIFont *)font constrainedToSize:(CGSize)size lineBreakMode:(UILineBreakMode)lineBreakMode 

:私はこの方法からの各要素のフレームの大きさを計算しました。最後に、スクロール・ビューが特定のサイズ(ページの長さ)を超えていた場合は、そのサイズをスクロール・ビューに与え、最後に少し追加して、ボトムにぶつからないようにしました。 titleLabelのプロパティの多くはIBでラベルに設定されたことを

int currentYPos; 
CGSize maximumSize = CGSizeMake(300, 9999); 
[scrollView setCanCancelContentTouches:NO]; 
scrollView.indicatorStyle = UIScrollViewIndicatorStyleDefault; 
scrollView.clipsToBounds = YES; 
scrollView.scrollEnabled = YES; 

scrollView.pagingEnabled = NO; 

// set the title frame size 
self.titleLabel.text = self.title; 

CGSize titleSize = [self.titleLabel.text sizeWithFont:self.titleLabel.font 
     constrainedToSize:maximumSize 
    lineBreakMode:self.titleLabel.lineBreakMode]; 

currentYPos = titleSize.height + 20; 

CGRect titleFrame = CGRectMake(10, 0, 300, currentYPos); 
self.titleLabel.frame = titleFrame; 

注:ここでは

は、いくつかのコードです。

+0

あなたが作成したビューはIBで行われましたが、コードを使用してオンザフライでサイズを変更しましたか? – SonnyBurnette

+0

ええ、でも、それは私がIBで始まったからです。そして、後でビューをフォーマットする方法を発見しました。 Xcodeで独自のラベルを設定することができますが、唯一の違いはコード内にフォントや行の高さなどを指定する必要があることです。 –

関連する問題