iPad / iPhone TableVIew поможет продвинуть новый взгляд - PullRequest
0 голосов
/ 04 августа 2010

Итак, мы недавно начали разработку приложений для iPad для нашей компании.К сожалению, никто из нас здесь никогда не занимался разработкой для iPhone / iPad, поэтому мы просто учимся на ходу и готовимся к этому.В основном наша проблема возникает, когда мы пытаемся выдвинуть представление на экран при щелчке строки таблицы.Никто из нас не может понять, почему он этого не делает, потому что код выглядит на 100% правильным, что бы мы ни говорили.Вот как выглядит метод didRowSelectedAtIndex::

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    // Navigation logic -- create and push a new view controller

 if(pdvController == nil)
  pdvController = [[PersonDetailViewController alloc] initWithNibName:@"PersonDetailView" bundle:[NSBundle mainBundle]];

 Person *aPerson = [appDelegate.people objectAtIndex:indexPath.row];

 pdvController.aPerson = aPerson;

 [self.appDelegate.navigationController pushViewController:pdvController animated:YES];
}

, а вот заголовок панели инструментовSearchViewController:

  #import <UIKit/UIKit.h>

    #import "RecentSearchesController.h"
    #import "PersonDetailViewController.h"

    @class ToolbarSearchAppDelegate, PersonDetailViewController;

    @interface ToolbarSearchViewController : UIViewController <UISearchBarDelegate, UIPopoverControllerDelegate, RecentSearchesDelegate> {

     ToolbarSearchAppDelegate *appDelegate;

        UIToolbar *toolbar;
        UISearchBar *searchBar;
     UITableView *resultsTable;

        PersonDetailViewController *pdvController;
        RecentSearchesController *recentSearchesController;

     UITableViewController *resultsTableController;
        UIPopoverController *recentSearchesPopoverController; 

    }


    @property (nonatomic, retain) IBOutlet UIToolbar *toolbar;
    @property (nonatomic, retain) UISearchBar *searchBar;
    @property (nonatomic, retain) IBOutlet UITableView *resultsTable;

    @property (nonatomic, retain) ToolbarSearchAppDelegate *appDelegate;
    @property (nonatomic, retain) PersonDetailViewController *pdvController;
    @property (nonatomic, retain) UITableViewController *resultsTableController;
    @property (nonatomic, retain) RecentSearchesController *recentSearchesController;
    @property (nonatomic, retain) UIPopoverController *recentSearchesPopoverController;



    @end

и заголовка ToolbarSearchAppDelegate:

#import <UIKit/UIKit.h>

@class ToolbarSearchViewController;

@interface ToolbarSearchAppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
    ToolbarSearchViewController *viewController;
 UINavigationController *navigationController;


 NSMutableArray *people;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet ToolbarSearchViewController *viewController;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;

@property (nonatomic, retain) NSMutableArray *people;

@end

и, наконец, personDetailController.h:

#import <UIKit/UIKit.h>

@class Person;

@interface PersonDetailViewController : UIViewController {

 IBOutlet UITableView *tableView;

 Person *aPerson;
}

@property (nonatomic, retain) Person *aPerson;
@property (nonatomic, retain) UITableView *tableView;

@end

Мы очень раздражаемся, потому что никто из нас не может понять, почему он не загружается, и любая помощь или понимание, которое вы, ребята, могли бы предоставить, было бы удивительным.Я не был уверен, что вам нужно увидеть, поэтому, если вам нужно что-то более конкретное, дайте мне знать, и я опубликую это.Спасибо!

пс.Я не уверен, как теги кода будут обрабатывать весь причудливый синтаксис Obj-c, поэтому, если вы видите синтаксические ошибки, просто игнорируйте их.Предположим, что это синтаксически правильно и будет компилироваться и запускаться ...

1 Ответ

1 голос
/ 04 августа 2010

Эта строка выглядит немного странно:

[self.appDelegate.navigationController pushViewController:pdvController animated:YES];

попробуйте и сделайте это

[self.navigationController pushViewController:pdvController animated:YES];

edit Summing op, проблема в том, что вы этого не делаетеесть контроллер навигации, так что вы не можете толкать контроллер вида, как это.То, что вы можете сделать, это нажать контроллер вида модально , используя

[self presentModalViewController:pdvController animated:YES];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...