Изменить положение кнопки удаления в UITABLE VIEW - PullRequest
1 голос
/ 10 марта 2011

Я использую табличное представление, и я использую другой размер ячейки, но когда я удаляю ячейку, она отображается в постоянной позиции, а не в середине ячейки. Что я должен сделать для пользовательского положения кнопки удаления?

Ответы [ 2 ]

1 голос
/ 21 марта 2011

Это действительно глупо, но я нашел этот фрагмент кода некоторое время назад:

- (void)willTransitionToState:(UITableViewCellStateMask)state {

    [super willTransitionToState:state];

    if ((state & UITableViewCellStateShowingDeleteConfirmationMask) == UITableViewCellStateShowingDeleteConfirmationMask) {

        for (UIView *subview in self.subviews) {

            if ([NSStringFromClass([subview class]) isEqualToString:@"UITableViewCellDeleteConfirmationControl"]) {             

                subview.hidden = YES;
                subview.alpha = 0.0;
            }
        }
    }
}

- (void)didTransitionToState:(UITableViewCellStateMask)state {

    [super willTransitionToState:state];

    if (state == UITableViewCellStateShowingDeleteConfirmationMask || state == UITableViewCellStateDefaultMask) {
        for (UIView *subview in self.subviews) {

            if ([NSStringFromClass([subview class]) isEqualToString:@"UITableViewCellDeleteConfirmationControl"]) {

                UIView *deleteButtonView = (UIView *)[subview.subviews objectAtIndex:0];
                CGRect f = deleteButtonView.frame;
                f.origin.x -= 20;
                deleteButtonView.frame = f;

                subview.hidden = NO;

                [UIView beginAnimations:@"anim" context:nil];
                subview.alpha = 1.0;
                [UIView commitAnimations];
            }
        }
    }
}

По сути, вы очищаете подпредставления, пока не найдете кнопку удаления. Я также рекомендую не показывать кнопку удаления по умолчанию и использовать собственную кнопку удаления.

0 голосов
/ 10 сентября 2013

Перезагрузите таблицу в viewWillAppear.После перезагрузки таблица перезагрузится.

[super viewWillAppear:animated];
//  [self.tableView reloadData ];
[tblSimpleTable reloadData];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...