마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

viewPager에서 setOnPageChangeListener 기능 구현하는 방법 질문좀요 ㅠ

0 추천

현재 아래 그림처럼 이미지 전체 개수를 표시하고 현재 몇번째의 이미지를 보고 있는지 표시하는 기능을 만들고 싶은데요.

구를링해보니 setOnPageChangeListener라는 기능을 사용하면 된다고 하는데 기존에 viewpaer를 구현해놓은 코드에

어떻게 적용해야 하는지 잘 몰라서요...

고수님들 구현 방법 좀 자세하게 설명 부탁드려요. ㅠ

 

 

DetailActivity.java (현재 구현해놓은 viewPager 부분)

		int itemList[] = {getResources().getIdentifier("@drawable/" + c.getString(28), "drawable", "com.example.zlasearchtest1"),
						  getResources().getIdentifier("@drawable/" + c.getString(29), "drawable", "com.example.zlasearchtest1"),
						  getResources().getIdentifier("@drawable/" + c.getString(30), "drawable", "com.example.zlasearchtest1"),
						  getResources().getIdentifier("@drawable/" + c.getString(31), "drawable", "com.example.zlasearchtest1"),
						  getResources().getIdentifier("@drawable/" + c.getString(32), "drawable", "com.example.zlasearchtest1")};
		
		//image swipe 기능
		ViewPager viewPager = (ViewPager) findViewById(R.id.view_pager);
		DetailActivity_ViewPagerAdapter adapter = new DetailActivity_ViewPagerAdapter(this, itemList);
		viewPager.setAdapter(adapter);

 

DetailActivity_ViewPagerAdapter.java (현재 구현해놓은 뷰페이저 어뎁터)

package com.example.zlasearchtest1;

import android.content.Context;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;

public class DetailActivity_ViewPagerAdapter extends PagerAdapter {
	
	Context context;
	
	private int[] GalImages = new int[] {
			R.drawable.test1,
			R.drawable.test1,
			R.drawable.test1,
			R.drawable.test1,
			R.drawable.test1
			
	};
	
	DetailActivity_ViewPagerAdapter(Context context, int[] itemList) {
		this.context = context;
		this.GalImages = itemList;
	}
	
	@Override
	public int getCount() {
		// TODO Auto-generated method stub
		return GalImages.length;
	}

	@Override
	public boolean isViewFromObject(View view, Object object) {
		// TODO Auto-generated method stub
		return view == ((ImageView)object);
	}
	
	@Override
	public Object instantiateItem(ViewGroup container, int position) {
		
		ImageView imageView = new ImageView(context);
		imageView.setPadding(0, 0, 0, 0);
		imageView.setScaleType(ImageView.ScaleType.FIT_START); //CENTER_INSIDE
		imageView.setImageResource(GalImages[position]);
		
		((ViewPager)container).addView(imageView, 0);
		
		return imageView;
	}
	
	@Override
	public void destroyItem(ViewGroup container, int position, Object object) {
		((ViewPager)container).removeView((ImageView)object);
	}	
}

 

뿌요뿌요 (1,350 포인트) 님이 2015년 2월 6일 질문

1개의 답변

0 추천
뷰페이져에 setOnPageChangeListener라는 함수가 있습니다 거기에 onPageSelected에서 관리하시면됩니다.
안사드 님이 2015년 2월 6일 답변
...