2012-04-12 12 views
2

Ich begann ein Tabbed-Anwendungsprojekt, und auf meiner ersten Blick möchte ich ein besiedeltes Liste bekommen, damit ich eine NSArray wie Follow erklärt:Tableview in TabBarController

@interface agrospineFirstViewController : UIViewController <UITableViewDelegate  ,UITableViewDataSource> 
{ 
NSArray *JournalList; 
} 
@property (nonatomic,retain) NSArray *JournalList; 
@end 

und fügte ich auf dem .m die folgenden:

[super viewDidLoad];

//initialisation de la liste 
JournalList = [NSArray arrayWithObjects:@"journal1",@"journal2",nil]; 


//initialisation du table View 
UITableView* tableView=[[UITableView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]style:UITableViewStylePlain]; 


//population de la vue 


-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 
{ 
    return [JournalList count]; 
} 

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
static NSString *MyIdentifier = @"MyIdentifier"; 

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier]; 

if (cell == nil) 

    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:MyIdentifier]; 

// Configuration de la cellule 

NSString *cellValue = [JournalList objectAtIndex:indexPath.row]; 
cell.textLabel.text = cellValue; 
return cell; 

} 

i droped auch die table in den Blick ... aber immer noch einen Fehler auf numberOfRowsInSection zeigt fragen zu ersetzen „:“ durch „;“ Hilfe zur Verbesserung?

Vielen Dank für Ihre Zeit

+1

U benötigen Array Alloc, JournalList = [[NSArray alloc] initWithObjects: @ "journal1" @ "journal2", nil]; – Charan

+0

Sie sollten den gesamten Code des View-Controllers einfügen. –

Antwort

2

Ich glaube, Sie viewDidLoad Methode wie folgt nicht geschlossen haben:

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    //initialisation de la liste 
    JournalList = [NSArray arrayWithObjects:@"journal1",@"journal2",nil]; 


    //initialisation du table View 
    UITableView* tableView=[[UITableView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]style:UITableViewStylePlain]; 


    //population de la vue 
} 

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 
{ 
    return [JournalList count]; 
} 

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    static NSString *MyIdentifier = @"MyIdentifier"; 

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier]; 

    if (cell == nil) 

    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:MyIdentifier]; 

    // Configuration de la cellule 

    NSString *cellValue = [JournalList objectAtIndex:indexPath.row]; 
    cell.textLabel.text = cellValue; 
    return cell; 

} 
+0

Es ist geschlossen, ich habe es nicht kopiert – Hosni

+0

haben Sie das Array zugewiesen – Charan

+0

@SreeCharan Array wird mit diesem Code initialisiert: 'JournalList = [NSArray ArrayWithObjects: @" journal1 ", @" journal2 ", nil];' aber es sollte behalten werden. –

2

Sie nicht diese Tabelle hinzufügen müssen
UITableView* tableView=[[UITableView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]style:UITableViewStylePlain];

einfach auf die Viewcontroller und fügen Sie diesen ViewController-Namen in der AppDelegate-Klasse wie folgt hinzu:

UIViewController *homeViewController = [[[HomeViewController alloc] initWithNibName:@"HomeViewController" bundle:nil] autorelease]; 
self.tabBarController = [[[UITabBarController alloc] init] autorelease]; 
self.tabBarController.viewControllers = [NSArray arrayWithObjects:homeViewController,nil]; 

Gib delagate und Datenquelle Verbindungen in xib Klasse

+0

Ich werde eine Frage dazu stellen Ich schicke dir einen Link dazu – Hosni

+0

Ich habe versucht zu verstehen, was du hier geschrieben hast, aber ich glaube nicht, dass ich es verstehe .. was du versuchst zu sagen ist, dass ich es tun sollte Hinzufügen eines Arrays von View-Controllern in den TabBarController? – Hosni

+0

ja, du gehst es. – Charan

Verwandte Themen