2015-04-09 5 views
0

Я использую NMPopUpView, чтобы показать всплывающее окно, когда пользователь коснется строки таблицы. Проблема возникает, когда я просматриваю табличное представление, и я касаюсь строки, всплывающее окно появляется в верхней части таблицы.iOS - PopUpViewController on tableview появляется сверху

Я работал вокруг проблемы с переходом к верхней части Tableview, когда пользователь прикасается строка с этим кодом:

[self.tableView setContentOffset:CGPointZero animated:NO]; 

, а затем прокручиваю к исходной точке, когда пользователь закрыть всплывающее окно с :

[self.tableView scrollToRowAtIndexPath:indexPath 
        atScrollPosition:UITableViewScrollPositionTop 
          animated:YES]; 

Но это не совсем профессиональное решение.

Это код, который я использую для вызова всплывающего окна:

self.popViewController = [[PopUpViewController alloc] initWithNibName:@"PopUpViewController" bundle:nil]; 
    [self.popViewController setTitle:@"This is a popup view"]; 
[self.popViewController showInView:self.tableView withImage:image withMessage:bg animated:YES]; 

Спасибо.

РЕШЕНИЕ:

Чтобы иметь представление о позиции прокрутки:

[self.popViewController showInView:self.navigationController.view withImage:image withMessage:bg animated:YES]; 
+0

Что произойдет, если вы используете представление UITableViewCell для отображения всплывающего окна? – muffe

+0

К сожалению ничего нет – Kerberos

ответ

1
- (void)showInView:(UIView *)aView withImage:(UIImage *)image withMessage:(NSString *)message animated:(BOOL)animated 
{ 
     dispatch_async(dispatch_get_main_queue(), ^{ 
     [aView addSubview:self.view]; 
     self.logoImg.image = image; 
     self.messageLabel.text = message; 
     if (animated) { 
     [self showAnimate]; 
     } 
    }); 
    } 

В popupcontroller.m файл это уже написано, что это добавить подвид к tableview.so очевидно, добавить popupview к 0,0 позиция таблицы. Вы должны установить только положение popupview. Если вы откроете всплывающее окно, выбрали метод, а затем отобразите всплывающее окно в этой строке.

+0

Да, я вызываю всплывающее окно из didSelectRowAtIndexPath, но с позиции строки он не показывает всплывающее окно. Я нашел решение, оно находится в редактировании. Большое спасибо. – Kerberos

Смежные вопросы