Изменение положения DragRefreshView в библиотеке three20

Я использую библиотеку three20 для проекта iPhone. В рамках этого я использую pull для обновления (например, fb и twitter) в табличном представлении. Он отлично работает, однако было бы лучше, если бы он был внизу таблицы.

Я не вижу каких-либо очевидных настроек конфигурации для этого (в основном нет документации по API), поэтому я покопался и похоже, что мне нужно развернуть свою собственную реализацию TTTableViewDragRefreshDelegate

Я нашел код, который добавляет фактическую кнопку перетаскивания (удалены ненужные биты):

- (id)initWithController:(TTTableViewController*)controller {
    if (self = [super initWithController:controller]) {
        // Add our refresh header
        _headerView = [[TTTableHeaderDragRefreshView alloc]
                      initWithFrame:CGRectMake(0,
                                                -_controller.tableView.bounds.size.height,
                                                _controller.tableView.width,
                                                _controller.tableView.bounds.size.height)];
        _headerView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
        _headerView.backgroundColor = TTSTYLEVAR(tableRefreshHeaderBackgroundColor);

        [_controller.tableView addSubview:_headerView];
}

Но у меня совсем нет опыта работы с движущимися объектами в коде, поэтому я не совсем уверен, с чего начать. Любые идеи?


person Chris James    schedule 21.07.2010    source источник


Ответы (1)


Вместо того, чтобы добавлять его в заголовок UITableView, вы пытались вместо этого добавить его в нижний колонтитул?

Вы можете получить доступ к этому через self.tableView.tableFooterView .. Однако предупреждение: я не пробовал это с кодом three20, и он может проверять, что пользователь прокручивает вверх, а затем обновляет таблицу. Вы должны изучить это немного больше самостоятельно. Возможно, вам также придется возиться с рамкой, чтобы она выглядела правильно (не на моем ноутбуке, иначе я мог бы помочь немного больше).

Попробуйте изменить код на:

[_controller.tableView.tableFooterView addSubview:_headerView];

Подробнее здесь: http://developer.apple.com/iphone/library/documentation/uikit/reference/UITableView_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006943-CH3-SW4< /а>

person iwasrobbed    schedule 21.07.2010