У меня есть TabBarController с 4 вкладками, 3 из которых представляют собой таблицы. Я пытаюсь поместить деталь для каждой ячейки таблицы просмотра, и я не думаю, что раскадровка эффективна, так как у меня более 50 подробных страниц. Я очень новичок во всем этом, и я попытался выяснить, как связать деталь с каждой вкладкой в течение нескольких часов. Мои представления таблиц начинаются со второго контроллера просмотра. Вот SecondViewController.m:XCode TableViewController для подробностей в Objective-C
#import "SecondViewController.h"
@implementation SecondViewController
{
NSArray *tableData;
}
@synthesize tableData;
#pragma mark - View lifecycle
- (void)viewDidLoad
{
tableData = [NSArray arrayWithObjects:@"Carter", @"Greene", @"Hancock", @"Hawkins", @"Johnson", @"Sullivan", @"Unicoi", @"Washington", nil];
[super viewDidLoad];
}
#pragma mark - TableView Data Source methods
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection: (NSInteger)section
{
return [tableData count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MyCell"];
if (cell == nil)
{
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"MyCell"];
}
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
cell.textLabel.text = [tableData objectAtIndex:indexPath.row];
return cell;
}
@end
Вот SecondViewController.h:
#import <UIKit/UIKit.h>
@interface SecondViewController : UIViewController <UITableViewDelegate,
UITableViewDataSource>
@property(nonatomic, retain) NSArray *tableData;
@end
Если это помогает, вот моя раскадровки.
Если кто-нибудь может помочь мне по отдельности добавлять детали к каждой ячейке табличного наиболее безболезненным способом возможно, я был бы признателен. Благодаря!
Вам, вероятно, нужно будет объяснить больше о том, что вы подразумеваете под деталями? Откройте контроллер подробного представления, когда пользователь нажимает на вашу ячейку? Пожалуйста, дополните. –
Я использую Swift, поэтому, к сожалению, я не смогу подробно остановиться на вас в Obj-C, но я могу предложить решение высокого уровня. Вы должны создать другой 'UIViewController' ..... сказать' DetailViewController'. Вы можете настроить его, как вы хотите визуально, а затем, когда пользователь нажимает на «TableViewCell», выполните segue в «DetailViewController» и передайте данные из ячейки в контроллер представления. –
Почему вы думаете, что раскадровка будет неэффективной? По моему опыту, у вас может быть довольно глупое количество объектов в раскадровке, и они разбиваются и загружаются по частям во время выполнения, редко возникает проблема времени исполнения. Кроме того, у вас действительно есть 50 * разных * подробных страниц, или все они будут одинаковыми с разным контентом? – zpasternack