Измените UITableViewCellAccessory после InAppPurchase. Возможный? - PullRequest
0 голосов
/ 06 февраля 2012

У меня есть приложение TabBar с 5 вкладками.На пятой вкладке я управляю InAppPurchase без проблем.Когда пользователь покупает контент и переключается на первую вкладку (она имеет TableView), я хотел бы изменить UITableViewCellAccessory с none на UITableViewCellAccessoryDisclosureIndicator.

Это возможно?

Я не понимаюкуда я должен вставить изменение UITableViewCellAccessory.

Спасибо, Алессандро из Италии.

Ответы [ 2 ]

1 голос
/ 06 февраля 2012

Здравствуйте, Алессандро из Италии,

Ну, что вам нужно сделать, это реализовать метод cellForRow:atIndexPath: из класса UITableView, в этом методе у вас, вероятно, будет условие этого типа:

if (IN_APP_PURCHASE_DONE == YES){
    [cell setAccesoryType:UITableViewCellAccessoryDisclosureIndicator];
}

Редактировать:

Чтобы быть уверенным, что вы обновляете UITableVIew после покупки дополнений, вы должны проверить метод tabBarController:didSelectViewController: объекта UITabBarControllerDelegate, когдапоявится контроллер представления табличного представления для перезагрузки данных.

0 голосов
/ 07 февраля 2012

Решение El Developer не совсем работает, потому что cellForRow:atIndexPath: выполняется только при первом создании ячейки. Таким образом, если вкладка с tableViewCell открывается до совершения покупки в приложении, ячейка будет уже создана без индикатора раскрытия информации.

Вот что вам нужно сделать:

  1. В viewController для первой вкладки создайте UITableViewCell переменную экземпляра.
  2. В cellForRow:atIndexPath: при создании ячейки, для которой требуется получить индикатор раскрытия, установите для переменной экземпляра также эту ячейку.
  3. Также в первом viewController создайте метод, который добавит индикатор раскрытия в ячейку.
  4. Вызовите метод выше, чтобы установить индикатор раскрытия ячейки, когда происходит покупка в приложении. Например, вы можете сделать контроллер представления первой вкладки делегатом для контроллера представления пятой вкладки.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...