UITableViewCell работает по-разному на iPhone и iPad - PullRequest
2 голосов
/ 19 февраля 2011

Люди, кажется, что setSelected: animated: работает по-разному на iPhone и iPad, даже в симуляторе.Рассмотрим приведенный ниже код:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell* cell = [tableView cellForRowAtIndexPath:indexPath];
    if (cell.accessoryType == UITableViewCellAccessoryNone)  {
            //[cell setSelected:NO animated:YES]; works only on iPhone, but not on iPad
              [tableView deselectRowAtIndexPath:indexPath animated:YES]; //works everywhere
    return;
    }

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

}

похоже, эта строка работает только на iPhone* setSelected: animated: ограничения метода?

1 Ответ

0 голосов
/ 19 февраля 2011

Я думаю, что это специально для iPad, поскольку UITableViews не предназначены для использования вне UISplitViewControllers.

При использовании UITableView в viewControllers [0] учитывайте, как UITableViewCell будет оставаться выбранным, пока пользователь взаимодействует с UIViewController в viewControllers [1].

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

Я вообще не могу это поддержать ... Я посмотрел это на HIG, и это ничего не говорит о том, что я упомянул.

http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/TableView_iPhone/AboutTableViewsiPhone/AboutTableViewsiPhone.html#//apple_ref/doc/uid/TP40007451

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...