2010-12-29 4 views

ответ

0

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

Если вы спросите адаптер getSelectedItemPosition() в любом другом потоке, он может дать вам текущую позицию, но может также быть устаревшим в течение некоторого времени, так как я предполагаю, что поток пользовательского интерфейса будет обновлять значение без проверки на исключительную блокировку ,

+0

Спасибо за быстрый ответ ... – mareeswaran

+0

ли смысл, это приемлемый ответ? –

0

Мы можем получить позицию, когда мы прокручиваем изображение в галерее, вы переписываете Gallery View's 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){ 
    } 
}