iOS: TabBarController с двумя вложенными представлениями? - PullRequest
0 голосов
/ 30 апреля 2011

В моем приложении я хочу два режима, из которых пользователь может выбирать, используя контроллер панели вкладок. Купить вид и продать вид. Но в представлении на продажу и на представлении покупки есть несколько представлений каждый. «Список предложений», «Детали предложения», «Сделать предложение» и т. Д.

Я думал об изменении представления, относящегося к «представлению продажи», при нажатии кнопок, но это кажется неправильным.

Как правильно справиться с этим? Должны ли вкладки «покупать» и «продавать» привязываться к представлению, которое, в свою очередь, содержит массив из списка нескольких подпредставлений, деталей, предложений и т. Д.?

А как мне получить доступ к представлению «продать» из моих кнопок представления «список предложений»?

Большое спасибо, МРБ

1 Ответ

1 голос
/ 30 апреля 2011

В простейшей форме будет работать следующее

Каждая вкладка получает свой собственный контроллер UINavigation.Каждый навигационный контроллер имеет свою собственную коллекцию UIViewControllers.

Когда пользователь нажимает на вкладку, ему предоставляется соответствующий навигационный контроллер.Каждый навигационный контроллер может отображать UITableViewController, у которого есть выбор контроллеров подвидов для выбора.

ниже приведен код полупсевдо .. fyi

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.

    UITabBarController *tbc = [[UITabBarController alloc]init];
    UIWindow *w = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen] bounds]];;
    self.window = w; //property defined in the .h file
    [w release];



    //add the TabBarControllers view to the window.. this will be presented to the user
    [self.window addSubview:tbc.view];


    //BUT.. the tab bar doesnt have any items to show.. lets solve that

    NSMutableArray *a = [[NSMutableArray alloc]init];

    // you should have two ViewControllers already created, ViewControllerA and ViewControllerB, or whetever you want to call them.
    // they should both inherit from UITableViewController (for our example)
    // then create two UINavigationControllers, initialize each one with the corresponding ViewController (ViewControllerA and B);
    // add each UINavigationController to our array above




    //assign our view controllers;
    tbc.viewControllers=a;
    [a release];



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