Загрузить UIView или UITableView на основе одной переменной - PullRequest
0 голосов
/ 16 марта 2011

В моем приложении есть вкладка "Избранное". Внутри, конечно же, есть элементы (в UITableView), которые пользователь установил в «избранное».

Моя проблема заключается в следующем: когда при запуске у пользователя нет избранного, я хочу показать UIView (с помощью кнопки UIBable «добавить избранное»), а не UITableView ...

возможно ли это?

Ответы [ 3 ]

0 голосов
/ 16 марта 2011

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

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];

    //Reload the array here.
    [self loadFavoriteArray];

    if (_favoriteArray == nil || [_favoriteArray count] < 1) {
        [_favoriteTableView setHidden:YES];
        [_noFavoriteView setHidden:NO];
    }
    else {
        [_favoriteTableView setHidden:NO];
        [_noFavoriteView setHidden:YES];
    }
}
0 голосов
/ 16 марта 2011

Как настроено ваше представление - UIViewController или UITableViewController?Если я правильно понимаю ваш вопрос, я думаю, у вас есть пара вариантов.

1) Вы можете установить tableHeaderView.Это позволит вам иметь кнопку над таблицей, которая может быть заполнена одной ячейкой с надписью «Нет избранного» ... или что-то в этом роде.Позволит вам удалить кнопку, если у них есть список избранных, или вы даже можете оставить ее там навсегда для быстрого добавления дополнительных избранных

2) Предполагая, что вы используете UIViewController (и впоследствии добавляете свой UITableView), а не UITableViewController, вы можете просто не добавлять подпредставление UITableView, если у него нет избранных.

Надеюсь, это поможет ...

0 голосов
/ 16 марта 2011

Конечно, это будет простой условный код в вашем коде, предпочтительно в методе viewWillAppear:.Примерно так:

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];

    if (self.hasFavorites) {
        // add UITableView as a subview
    } else {
        // add UIButton as a subview
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...