私はこのデザイン画像をオンラインで見つけました。複数の字幕を持ち、写真に示されているようにカスタマイズできる UITableCell をどのように作成できるか、本当に困惑しています。
私の理解では、セルごとに 1 つのサブタイトルしか使用できないということです。
そのような UITable セルを作成する方法はありますか? セルのタイトルの下にある 4 つのサブタイトルをどのように作成しますか?
私はこのデザイン画像をオンラインで見つけました。複数の字幕を持ち、写真に示されているようにカスタマイズできる UITableCell をどのように作成できるか、本当に困惑しています。
私の理解では、セルごとに 1 つのサブタイトルしか使用できないということです。
そのような UITable セルを作成する方法はありますか? セルのタイトルの下にある 4 つのサブタイトルをどのように作成しますか?
UITableViewCell のカスタム レイアウトを使用することで、これを簡単に行うことができます。このビデオは、これを行うのに役立ちます。
http://www.youtube.com/watch?v=d_kO-J3DYvc
基本的に、ストーリーボード/NIB ファイルでセルの UI を設計し、そこにあるテーブル セルに複数のラベルを追加する必要があります。UITableViewCell をサブクラス化し、ストーリーボード/NIB で設計された UITableViewCell にリンクします。ラベル用にそのクラスに IBOUlets を追加し、UI からこれらの IBOutlets にラベルをリンクします。
UITableViewCell
提供された画像から、プロトタイプには 1UIImageView
と 5が含まれているように見えUILabel
ます。IB またはストーリーボードを使用してテーブル ビュー セルを作成すると仮定すると、「テーブル ビュー スタイル」をカスタムに設定し、aUIImageView
と 5UILabel
をプロトタイプ セルにドラッグします。のそれぞれについて、UILabel
必要に応じて位置、フォント、およびフォント サイズを調整します。セルの高さを調整する必要がある場合もあります。
カスタムセルに関するサンプルプロジェクトを作成しました。作成したこのgithubリンクを確認してください。ストーリーボードを使用しました。これがサンプルアプリのスクリーンショットです
UITableViewCell をサブクラス化し、複数の UILabel を追加するだけです。次に、layoutSubviews メソッドをオーバーライドして、それらのラベルを配置します。次に、cellForRow で、サブクラス化された UITableViewCell をインスタンス化してください。これを確認する時間はありませんが、サブクラスは次のようになります。
@interface CustomCell : UITableViewCell {
UILabel *myCustomLabel1;
}
@end
@implementation CustomCell
- (id)initWithFrame:(CGRect)frame reuseIdentifier:(NSString *)reuseIdentifier {
if (self = [super initWithFrame:frame reuseIdentifier:reuseIdentifier]) {
// Initialization code
myCustomLabel1 = [[UILabel alloc] initWithFrame:CGRectZero];
[self.contentView addSubview:myCustomLabel1];
}
return self;
}
-(void)layoutSubviews
{
[super layoutSubviews];
float margin = 5;
[myCustomLabel1 setFrame:CGRectMake(self.bounds.origin.x+margin, self.bounds.origin.y, self.bounds.size.width - (2*margin), self.bounds.size.height)];
}
@end