Tableview не сверлить - PullRequest
       17

Tableview не сверлить

0 голосов
/ 08 марта 2010

Хорошо, вот код в моем AppDelegate, который загружает перо Schedule.

Schedule *newestVideoController = [[Schedule alloc] initWithNibName:@"Schedule" bundle:nil];
    newestVideoController.tabBarItem = [[UITabBarItem alloc] initWithTitle:@"Schedule" image:[UIImage imageNamed:@"app-icon_2_newest.png"] tag:2];
    NSArray *controllers = [NSArray arrayWithObjects:navController, newestVideoController, nil];
    mainController.viewControllers = controllers;

Теперь вот мой заголовочный файл для расписания.

#import <UIKit/UIKit.h>
#import "AnotherViewController.h"


@interface Schedule : UITableViewController
<UITableViewDelegate, UITableViewDataSource>    {
    NSArray *mySchedule;

}

@property (nonatomic,retain) NSArray *mySchedule;

@end

И наконец, здесь снова мой файл реализации для «Расписания».

#import "Schedule.h"
#import "AnotherViewController.h"


@implementation Schedule

@synthesize mySchedule;

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{

    return mySchedule.count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView 
         cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    //create a cell
    UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
                                                   reuseIdentifier:@"cell"];
    //fill it with contents
    cell.textLabel.text = [mySchedule objectAtIndex:indexPath.row];
    //return it
    return cell;
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    AnotherViewController *anotherViewController = [[AnotherViewController alloc] initWithNibName:@"AnotherViewController" bundle:nil];
    [self.navigationController pushViewController:anotherViewController animated:YES];
    [anotherViewController release];



}

/*
 // The designated initializer.  Override if you create the controller programmatically and want to perform customization that is not appropriate for viewDidLoad.
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
    if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
        // Custom initialization
    }
    return self;
}
*/


// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
    NSString *myFile = [[NSBundle mainBundle] pathForResource:@"exercise" ofType:@"plist"];
    mySchedule = [[NSArray alloc] initWithContentsOfFile:myFile];

    [super viewDidLoad];
}


/*
// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
*/

- (void)didReceiveMemoryWarning {
    // Releases the view if it doesn't have a superview.
    [super didReceiveMemoryWarning];

    // Release any cached data, images, etc that aren't in use.
}

- (void)viewDidUnload {
    // Release any retained subviews of the main view.
    // e.g. self.myOutlet = nil;
}


- (void)dealloc {
    [super dealloc];
}


@end

1 Ответ

0 голосов
/ 08 марта 2010

Нужно больше кода / информации. Похоже, что вы реализовали tableView: didSelectRowAtIndexPath: и правильно поместили другой View Controller в стек, поэтому трудно сказать Но вот список совпадений:

  • Вы уверены, что tableView: didSelectRowAtIndexPath: вызывается? Вы установили точку останова? Если нет, возможно, вы забыли установить свой класс Расписание в качестве делегата либо программно, либо в Интерфейсном Разработчике.

  • Определен ли навигационный контроллер расписания? То есть он был помещен в стек контроллера навигации?

  • Вы уверены, что файл пера для AnotherViewController существует?

...