0

関係を持つオブジェクトを含むアプリケーションがあります。「人」オブジェクトは、複数の「評価」オブジェクトを持つことができます。ナビゲーションコントローラーから始まります。テーブルビューから Person オブジェクトをタップすると、すべての「評価」を含むテーブルビューに移動します。すべての評価の上部に、すべての評価を表示したい「すべての評価」という静的セルが 1 つあります。

問題は、評価の数が事前にわからないため、すべての評価を表示するのに適切な量のテキストフィールドを作成できないことです。

この特定の人に 7 つの評価があり、すべての評価オブジェクトに「時間」という 1 つの属性しかないとします。関連する 7 つの評価オブジェクトが表示された 7 つのテキスト フィールドを動的に作成するにはどうすればよいですか?

わかりにくかったらすみません。IB で UIView を作成してから、評価ごとに同じビューを複数回作成しようとしましたが、惨めに失敗しました。誰かが私を正しい方向に押してくれますか?

4

1 に答える 1

2

IB を使用している場合、同じビューを何度も再利用しています。それを使用して新しい UILabel を作成します。

float currentY = 0.0f;
float spacing =5.0f;

for(Evaluation *evaluation in EvalationsArray)
{
    UILabel *textLabel = [[UILabel alloc] initWithFrame:CGRectMake(yourX,currentY,yourWidht, yourHeight)];
    [textLabel setText:[NSString stringWithFormat:@"%@ : %@",evaluation.name,evaluation.time]];
    [self.view addSubview:textLabel]
    currentY = currentY+spacing+yourHeight;
}
于 2013-09-21T22:46:48.533 に答える