UIViewController
に2つのUITableView
を使用していますが、両方のテーブルビューに行とセルを挿入するにはどうすればよいですか? 2番目のテーブルビューに与えると、セクション内の行数が重複して宣言されます。iphoneのシングルビューコントローラで2つ以上のUITableViewを使用する方法
8
A
答えて
17
これは、dataSource/delegateメソッドのパラメータがtableView
である理由です。その値に応じて、あなたは異なる数/細胞を返すことができます/ ...
- (void)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (tableView == _myTableViewOutlet1)
return 10;
else
return 20;
}
2
あなたUITableViewDelegate
とUITableViewDatasource
方法のすべては、一度だけ実行されます。メソッドが呼び出されているテーブルビューを確認するだけで済みます。
if (tableView == tblView1) {
//Implementation for first tableView
}
else {
//Implementation for second tableView
}
これはtableView
としてテーブルビューのデリゲートとデータソースのすべてのメソッドで動作しますが、あなたの方法の全てに共通するパラメータである
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {}
- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {}
This Linkはまたあなたのソリューションを持って見て問題。
希望します。
2
ご覧ください。
最初にインターフェイスビルダで2つのテーブルビューを作成し、次に2つのIBOutlet変数に接続し、両方のテーブルビューのデリゲートとデータソースを設定します。インタフェースで
は、このコードを使用し
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
if (tableView==tableView1)
{
return 1;
}
else
{
return 2;
}
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (tableView==tableView1)
{
return 3;
}
else
{
if (section==0)
{
return 2;
}
else
{
return 3;
}
}
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
if (tableView==tableView1)
{
//cell for first table
}
else
{
//cell for second table
}
return cell;
}
実装ファイルで
-IBOutlet UITableView *tableView1;
-IBOutlet UITableView *tableView2;
を提出します。希望は
1
ことは可能であるが、ここで参照コードを見に役立ちます:http://github.com/vikingosegundo/my-programming-examples
も、このページをご参照ください:2 tableview on a single view
関連する問題
- 1. シングルビューコントローラで2つの複数のUIPickerviewを作成する方法
- 2. androidで2つ以上のテキストチェンジリスナーを使用する方法
- 3. 2つ以上のボタンをダイアログボックスで使用する方法
- 4. 2つ以上のルートでtry_filesを使用する方法
- 5. Php sqlsrv - 2つ以上のデータベースを使用する方法
- 6. 1つのプロジェクトで2つ以上のキュードライバを使用する方法laravel v4.2
- 7. iPhone - 2つのUITableViewを対称にスクロールする方法
- 8. iPhone上でUITableViewを使用したポップアップモーダル
- 9. 2つ以上のジオポイントでelasticsearch距離クエリを使用する方法
- 10. spring(XML設定)で2つ以上のデータベースを使用する方法
- 11. laravel-5モデルで2つ以上のテーブルを使用する方法
- 12. UIPanGestureRecognizerを使用して2つ以上のUIImageViewsを移動する方法
- 13. 2つ以上の区切り文字を使用する方法
- 14. 2つ以上のIISアプリケーションからApache Igniteを使用する方法
- 15. codeigniterで2つ以上のデータベースを接続する方法
- 16. React Reduxで2つ以上のアクションを実行する方法
- 17. $ emitで2つ以上の値をバインドする方法
- 18. googlemapsApiで2つ以上のルートを描画する方法
- 19. pubnubで2つ以上のチャンネルをグループチャットする方法は?
- 20. 2つ以上のiosデバイスでオーディオを同期する方法
- 21. R:2つ以上のオブジェクトでall.equalを使用する
- 22. 2つ以上のサーブレットでSpring DIを使用するには?
- 23. 1つのUITableviewのセクションで2つのUITableviewを結合する方法は?
- 24. Gridviewで1行に2つ以上のDropDownlistを持つ方法
- 25. 同じサーバ上で2つのsshを使用する方法
- 26. 2つ以上のURLのHTTPエラーをチェックする方法は?
- 27. 2つ以上のルーティングレベルをDartのAngular 2のパラメータでネストする方法
- 28. OpenEmbeddedのwicキックスタートを使用する2つ以上のパーティション
- 29. 2つ以上のHTMLページで1つのアプレットのインスタンスを使用する
- 30. 2つ以上のテキストボックスをパラメータ化する方法
、その後どのように与えられたために、セルのテキスト値とdidSelect行法 – user1567956
をすべてのデータソース/デリゲートメソッド'tableView'パラメータを持っています。 'numberOfRowsInSection'だけでなく、' cellForRowAtIndexPath'や 'didSelectRowAtIndexPath'も含みます。 – Cyrille