2013-10-28 3 views
7

viewPagerIndicator 라이브러리에서 IconPageIndicator을 사용하고 있습니다. 표시기에서 아이콘을 클릭하면 해당 페이지로 이동하는보기 호출기가 필요합니다. 아이콘을 클릭하면 이벤트를 클릭 할 수 있습니까? IconPageIndicator에서 어떤 아이콘을 클릭했는지 어떻게 알 수 있습니까?IconPageIndicator에서 아이콘 클릭 리스너를 구현하는 방법

+0

+1 ... 내 해결책을 게시하려고합니다. @ bill gates – TheFlash

답변

10

질문과 예제 샘플을 읽었습니다. 당신 말이 맞습니다. 아이콘을 클릭하면 움직일 수 없습니다.

그래서 당신은

그냥

public void notifyDataSetChanged() 
{ 
    mIconsLayout.removeAllViews(); 
    IconPagerAdapter iconAdapter = (IconPagerAdapter) mViewPager.getAdapter(); 
    int count = iconAdapter.getCount(); 
    for (int i = 0; i < count; i++) { 
     ImageView view = new ImageView(getContext(), null, R.attr.vpiIconPageIndicatorStyle); 
     view.setImageResource(iconAdapter.getIconResId(i)); 
     view.setTag(""+i); 
     view.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       int viewPosition = Integer.parseInt(v.getTag().toString()); 

       mViewPager.setCurrentItem(viewPosition); 
      } 
     }); 
     mIconsLayout.addView(view); 
    } 
    if (mSelectedIndex > count) { 
     mSelectedIndex = count - 1; 
    } 
    setCurrentItem(mSelectedIndex); 
    requestLayout(); 
} 

깨끗한 라이브러리 프로젝트를 아래의 방법을 대체하고 it.also 청소하는 것을 잊지 마세요 다시 도서관 프로젝트 ---> IconPageIndicator.java을 편집해야합니다 프로젝트를 재건하십시오.

+0

작동합니다. 당신은 끝내줍니다 :) –

+0

@bill gates 나는 그것이 당신을 도왔다. – TheFlash

+0

안녕하세요, 오류가 발생했습니다. android.view.InflateException : 이진 XML 파일 줄 # 11 : com.viewpagerindicator.IconPageIndicator 클래스를 부 풀릴 때 오류가 발생했습니다. – user1051505