PagerAdapter Class


좌우 화면 터치로 페이지 넘기는 기능 구현 방법.

물론 다른 여러 방법들이 있겠지만, PagerAdapter를 쓴 방법을 남기고자 기록해둔다.


사용법


mPageAdapter = new PagerAdapterClass(this, mData);

mPager.setAdapter(mPageToeicAdapter);

mPageAdapter.notifyDataSetChanged();



      /**

* PagerAdapter 

*/

private class PagerAdapterClass extends PagerAdapter{

View v = null;

private LayoutInflater mInflater;

SparseArray<View> views = new SparseArray<View>();

ListView mParaphraseList, mMeaningList, mUsageList;

TextView mExpression, mStoredMemo;

EditText mMemoEditText;

Button mMemoBtn, mSaveBtn;

ImageButton mFavorite, mBookMark;

Context context;

ArrayList<Items> mData;

public PagerAdapterClass(Context c, ArrayList<Items> data){

super();

mInflater = LayoutInflater.from(c);

context = c;

v = mInflater.inflate(R.layout.page, null);

mData = data;

}

@Override

public int getCount() {

// TODO Auto-generated method stub

return mData.size();

}


@Override

public int getItemPosition(Object object) {

// TODO Auto-generated method stub

return super.getItemPosition(object);

// return POSITION_NONE;

}

@Override

public boolean isViewFromObject(View arg0, Object arg1) {

// TODO Auto-generated method stub

return false;

}


@Override

public void destroyItem(View pager, int position, Object view) {

// TODO Auto-generated method stub

((ViewPager)pager).removeView((View)view);

   views.remove(position);

}


@Override

public Object instantiateItem(ViewGroup container, int position) 

            { //해당 view의 그림을 여기서 그려주고 container에 넣는다.

// TODO Auto-generated method stub

v = mInflater.inflate(R.layout.page, null);

container.addView(v, 0);

views.put(position, v);

    return v; 

}


@Override

public void notifyDataSetChanged() {

// TODO Auto-generated method stub

super.notifyDataSetChanged();

}


@Override

public void setPrimaryItem(ViewGroup container, int position,

Object object) {

// TODO Auto-generated method stub

super.setPrimaryItem(container, position, object);

}


@Override

public void startUpdate(ViewGroup container) {

// TODO Auto-generated method stub

super.startUpdate(container);

}

}




블로그 이미지

미네르바98

안드로이드와 영화 리뷰, 생활정보에 관한 내용을 기재합니다.

,