Получение позиции изображения в GalleryView во время проведения?
-
13-10-2019 - |
Вопрос
Как я могу получить позицию текущего изображения, отображающего в галерее, пока оно проведет?
Решение
Поэтому я не думаю, что это возможно из -за того, как работают взгляды на адаптер. В основном большинство, если не все вызовы к адаптеру адаптера, должны быть в потоке пользовательского интерфейса, чтобы работать должным образом. И анимация определенно находится в потоке пользовательского интерфейса. Так что, поскольку они оба не могут происходить в одно и то же время в одном и том же потоке, вы не можете (точно) прочитать позицию, пока анимация переключения не закончится.
Если вы спросите адаптер GetSelectedItemposition () в любом другом потоке, он может дать вам текущую позицию, но также может быть устаревшим в течение некоторого времени, так как я предполагаю, что поток пользовательского интерфейса обновит значение без проверки на эксклюзивную блокировку.
Другие советы
Мы можем получить позицию, когда мы промахиваем изображение в виде галереи, вы перезаписываете галерею View's View setOnItemSelectedListener
.
У нас есть два метода от этого слушателя, как
avatar_gallery.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent,
View view,
int position,
long id){
Log.v("Selected", ""+position);
}
@Override
public void onNothingSelected(AdapterView<?> parent){
}
}