9

私のアプリケーションでは、写真のギャラリーがあり、

現在表示されている画像の位置を検出したいのですが、

例:アクティビティを起動すると、位置は0ですが、ギャラリーをスクロールすると、表示されている現在の画像の位置を取得したい、

OnFocusChanged 、 OnItemClicked を試しましたが、ギャラリーのアイテムをクリックした場合にのみ機能します

何か案は !:(

4

3 に答える 3

22
gal.setOnItemSelectedListener(new OnItemSelectedListener(){
            @Override
            public void onItemSelected(AdapterView<?> parent, View view,
                    int position, long id) {
            //Do something with position
            }
};

ギャラリーの新しいアイテムが中央に配置されるたびに、このコールバックを取得します。したがって、ユーザーがすばやくスクロールすると、通過する各アイテムに対してコールバックを取得するため、集中的に作業するために何もしないように注意してください。

于 2011-05-13T15:32:03.940 に答える
9

フリング中のイベントを排除するには、setOnItemSelectedListener() 呼び出しに加えてこれを追加します。

gal.setCallbackDuringFling(false);
于 2011-11-30T14:45:50.030 に答える
7

使用するGallery.getSelectedItemPosition()

于 2011-05-13T15:43:12.007 に答える