Получение текущей страницы - PullRequest
95 голосов
/ 09 ноября 2010

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

Это скрыто от нас полностью или у меня есть способ получить к нему доступ?

Ответы [ 13 ]

2 голосов
/ 06 июня 2013

Я извлек это из пары наших приложений ...

- (NSInteger)currentPage
{
    if (0 == self.frame.size.width) {
        NSLog(@"frame width == 0!");
        return 0;
    }
    if (! self.currentPageValid) {
        _currentPage = round(self.contentOffset.x / self.frame.size.width);
        self.currentPageValid = YES;
    }
    return _currentPage;
}

Полный источник здесь

1 голос
/ 09 ноября 2010

Используете ли вы UIPageControl?Если это так, это имеет свойство currentPage.Если нет, я думаю, вам нужно рассчитать индекс страницы по смещению scrollView.

0 голосов
/ 24 августа 2018

Если кто-нибудь ищет способ сделать в C # для Xamarin

    public int CurrentIndex
    {
        get => (int)Math.Round(this.scrollView.ContentOffset.X / this.scrollView.Frame.Width);
        set => this.scrollView.ScrollRectToVisible(new CGRect(new CGPoint(this.scrollView.Frame.Size.Width * value, 0), this.scrollView.Frame.Size), true);
    }

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

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