2015-04-23 3 views
0

Вот мой кодСодержания Установки смещения в UITableView не работает, когда он прокрутка

// 1 
func scrollViewDidEndDragging(scrollView: UIScrollView, willDecelerate decelerate: Bool) { 
    scrollTableView() 
} 

// 2 
@IBAction func buttonPressed() { 
    scrollTableView() 
} 

// 3 
func scrollTableView() { 
    tableView.setContentOffset(CGPointZero, animated: false) 
    // tableView.scrollRectToVisible(CGRect(x: 0, y: 0, width: 1, height: 1), animated:true) // does not work either 
} 

Даже метода 1 (который вызывает метод 3), которые называют, Table View продолжает свой естественный скроллинг замедляется, пока не остановится. Он не позиционирует себя там, где я хочу.

Когда табличный вид не прокручивается, и я вызываю метод 2, нажимая кнопку, он получает установленное значение его содержимого и позиционирует его там, где должен.

Как я могу заставить его работать, вызвав метод ?

Благодаря

ответ

0

если я вам право должно работать:

func scrollViewWillBeginDecelerating(scrollView: UIScrollView) { 
    scrollTableView() 
} 
+0

Я хочу использовать scrollViewDideEndDragging, потому что я хочу, чтобы просмотр таблицы прокручивался, как только пользователь поднимает свой палец. – Lucas

+0

Я не совсем уверен, чего вы пытаетесь достичь. Может быть, вы можете объяснить немного подробнее? –

+0

Я хочу, чтобы вид в таблице прокручивался вверх, как только пользователь поднимает свой палец после прокрутки – Lucas

0

Вы должны также осуществлять scrollViewDidEndDecelerating

с scrollViewDidEndDragging: willDecelerate:

scrollViewDidEndDragging: willDecelerate: называется всегда

и

scrollViewDidEndDecelerating вызывается, когда торможение и торможение стола закончено.

+0

Я хочу использовать scrollViewDidEndDragging, потому что я хочу, чтобы табличное представление прокручивалось, как только пользователь поднимает свой палец. – Lucas

+0

// вызываем палец вверх, если пользователь перетаскивает. decelerate - true, если он продолжит движение потом - (void) scrollViewDidEndDragging: (UIScrollView *) scrollView willDecelerate: (BOOL) замедляется; –

+0

реализация func stopScroll() { CGPoint offset = scrollView.contentOffset; offset.x - = 1.0; offset.y - = 1.0; [scrollView setContentOffset: offset animated: NO]; offset.x + = 1.0; offset.y + = 1.0; [scrollView setContentOffset: offset animated: NO]; } и назвать его в scrollViewDidEndDragging: willDecelerate: метод –

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