ストーリーボード内で定義されている IBOutlet 接続とともに、プロトタイプ セルをロードする方法はありますか?
アップデート
セル (その母体の UICollectionViewCell) を単体テストしたいので、UIViewController コンテキストの外にロードしたいと思います。
事実上、nib からカスタム ビューをロードするのと同じ方法で、そのファイルの所有者を指定し、その IBOutlet を設定します。
ストーリーボード内で定義されている IBOutlet 接続とともに、プロトタイプ セルをロードする方法はありますか?
アップデート
セル (その母体の UICollectionViewCell) を単体テストしたいので、UIViewController コンテキストの外にロードしたいと思います。
事実上、nib からカスタム ビューをロードするのと同じ方法で、そのファイルの所有者を指定し、その IBOutlet を設定します。
単体テストでこれをまだ試していませんが、カスタムUITableViewCell
を別の nib に簡単に入れることができます。
ビューコントローラーで使用するには、セルをtableViewに登録する必要があります。
UINib *nib = [UINib nibWithNibName:@"ABCNameOfYourNibCell" bundle:nil];
[self.tableView registerNib:nib forCellReuseIdentifier:@"myCustomCell"];
次に、このようなセルを使用しますcellForRowAtIndexPath:
static NSString *CellIdentifier = @"myCustomCell";
ABCNameOfYourNibCell *cell =
[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
テスト目的のために、次のものを使用できるはずです。
ABCNameOfYourNibCell *testCell =
[[ABCNameOfYourNibCell alloc] initWithStyle: UITableViewCellStyleDefault reuseIdentifier:nil];
再利用動作をテストする必要がある場合は、ここで reuseIdentifier を設定prepareForReuse
し、セルを呼び出す必要があります。
通常はUITableViewController
または を作成しUITableView
ます。UITableViewCell
クラスも作成する必要があります。クラスを作成しUITableViewCell
たら、UIStoryboard に移動し、セルを選択します。
次に、UITableViewCell
クラスを次のように設定しIdentity Inspector
ます。
に要素を追加して、UITableViewCell
それらをクラスに接続します
CellIdentifier
の中にAttributes Inspector
次を追加します。
メソッドがある場所UITableViewController
やセルにアクセスして、このようにセルを呼び出す必要はありません ( の上部にあるクラスを忘れないでください:UIViewController
UITableViewDelegate
#import
UITableViewCell
ViewController
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"MyIdentifier";
MyCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier
forIndexPath:indexPath];
[cell.label setText:[NSString stringWithFormat:@"My Cell at Row %ld",
(long)indexPath.row]];
return cell;
}