2010-12-29 7 views

答えて

0

アダプタのビューの仕組みのために可能ではないと思います。基本的には、アダプタビューのアダプタへのすべての呼び出しではなくても、正しく動作させるにはUIスレッド上にある必要があります。アニメーションはUIスレッド上にあることは間違いありません。だから、同じスレッド上で同時に起こることはできないので、スワイプアニメーションが終了するまで実際に(正確に)位置を読み取ることはできません。

他のスレッドでアダプタのgetSelectedItemPosition()を呼び出すと、現在の位置が得られるかもしれませんが、UIスレッドが排他ロックをチェックせずに値を更新しようとしているので、 。

+0

のようなそのリスナーからの2つの方法は、あなたの迅速な応答をありがとういる

... – mareeswaran

+0

それは理にかなっていました、これは許容答えは? –

0

ギャラリービューで画像をスワイプすると位置がわかりますが、ギャラリービューの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){ 
    } 
} 
関連する問題