Флаттер: Как узнать позицию элемента внутри списка? - PullRequest
0 голосов
/ 15 апреля 2019

У меня есть представление списка элементов, но я хотел бы знать, как я могу найти его текущую позицию в просмотре списка, кто-нибудь знает?

Ответы [ 3 ]

1 голос
/ 15 апреля 2019

Используйте ListView.builder вот так:

ListView.builder(
    itemCount: items.length,
    itemBuilder: (BuildContext context, int index) {
     return new Text('The Position is: $index');
    }
)

Индекс представляет позицию элемента.

0 голосов
/ 15 апреля 2019

Я считаю, что ваш вопрос не попадает в эту ситуацию:

ListView.builder
  (
    itemCount: litems.length,
    itemBuilder: (BuildContext ctxt, int index) {      
     return new Text('my Index is: $index');
    }
  )

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

Я бы предложил следовать этой статье

Expanded(
            child: NotificationListener<ScrollNotification>(
              onNotification: (scrollNotification) {
                // Basically you need something like:
                // final _index = scrollOffset (or position) / item height; 

              },
              child: ListView.builder(
                itemCount: 30,
                itemBuilder: (context, index) {
                  return ListTile(title: Text("Index : $index"));
                },
              ),
            ),
          ),
0 голосов
/ 15 апреля 2019

вы можете использовать ListView.builder

ListView.builder
  (
    itemCount: litems.length,
    itemBuilder: (BuildContext ctxt, int index) {
      //the index is the item position you are looking for
     return new Text('my Index is: $index');
    }
  )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...