在我的申请中,我有一个图片库,
但我想检测当前显示的图像的位置,
例如:当我启动我的acvitivity时,位置为0,但是当我在我的画廊中滚动时,我想要显示当前图像的位置,
我尝试过OnFtemChanged,OnItemClicked,但只有点击我的画廊项目才有效
任何想法! :(
答案 0 :(得分:22)
gal.setOnItemSelectedListener(new OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
//Do something with position
}
};
每次将图库中的新项目放入中心时,您都会收到此回调,因此请注意不要做任何工作密集的事情,因为如果用户快速滚动,您将获得他们传递的每个项目的回调。
答案 1 :(得分:9)
要在fling期间消除事件,除了setOnItemSelectedListener()调用之外还要添加它:
gal.setCallbackDuringFling(false);
答案 2 :(得分:7)