0

私はiPhoneアプリで作業を開始しましたが、私はほとんどの経験がないので、画像ビュー、ラベル、ボタンを動的に再作成する方法がわかりません。基本的に、いくつかのデータが格納される配列があります。ただし、配列のサイズはさまざまであるため、ストーリーボードに静的 VC を作成することはできません。次のテンプレートを使用したいのですが、アレイはこのテンプレートを使用して、必要な回数だけ再作成する必要があります。

http://www.dropinsight.eu/screenshot1.png

どうぞよろしくお願いいたします。

乾杯

マックス

4

3 に答える 3

2

画像ビュー、ラベル、ボタンを に配置することを検討できますUITableView

UIViewControllerストーリーボードで を使用するのではなく、 を使用してくださいUITableViewController。これは、tableView のデータソースおよびデリゲートになり、 の作成に使用できますUITableViewCell。各セルには、例ごとにimageView、テキスト、および2つのボタンを含めることができます

詳細については、 Apple のドキュメントを参照してください。

于 2012-05-10T16:30:00.880 に答える
1

UITableView を使用して配列内の各エントリをセルとして表示することに関する以前の回答は、あなたが望む方法です。各アイテムを「動的に作成する」という質問に答えるには、次のように cellForRowAtIndexPath に各 UI 要素を作成します。

UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(x,y,w,h)];
[imageView setTag:1];
[cell addSubview:imageView];
[imageView release];

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(x,y,w,h)];
[label setFont:[UIFont systemFontOfSize:X]];
[label setTag:2];
[cell addSubview:label];
[label release];

UIButton *button1 = [[UIButton alloc] initWithFrame:CGRectMake(x,y,w,h)];
[button1 setImage:[UIImage imageNamed:@"ABC"] forState:UIControlStateNormal];
[button1 addTarget:self action:@selector(someMethod:) forControlEvents:UIControlEventTouchUpInside];
[button1 setTag:3];
[cell addSubview:button1];
[button1 release];

etc

次に、willDisplayCell メソッドで、行ごとに変化する UI アイテムの内容を次のように設定します。

UIImageView *imageView = (UIIamgeView *)[cell viewWithTag:1;
UILabel *label = (UILabel *)[cell viewWithTag:2];

[imageView setImage:[UIImage imageNamed:@"XYZ"]];
[label setText:@"XYZ"];
于 2012-05-10T17:02:52.613 に答える
1

あなたの質問を正しく解釈すると、各項目の情報を詳細に表示できる、ある種の項目のリストが必要になります。

UITableView を見てみましょう。これは、複数行のデータを表示するためのクラスです。その動作を変更して、ここで説明したビューとは異なるビューを表示できます。

Xcode には、iOS アプリケーションのテンプレートがいくつかあります。そのうちの 1 つは、テーブルビューを備えたアプリです。サンプル プロジェクトを開いて、次のようなチュートリアルを読むことをお勧めします: http://cocoawithlove.com/2009/04/easy-custom-uitableview-drawing.html

于 2012-05-10T16:28:47.713 に答える