IT하는 참새

이미지 슬라이드 (쉽게구현) 본문

프로그래밍/Android Tip

이미지 슬라이드 (쉽게구현)

pshot 2018. 8. 28. 23:50

이미지 슬라이드를 구현한다면 보통


ViewPager + ImageView를 이용하고 각종 기능들을 만들어야함



쉽게 이미지 슬라이드를 구현하는 라이브러리가 존재함


AutoScrollViewPager


사용법


1. gradle추가


compile ('cn.trinea.android.view.autoscrollviewpager:android-auto-scroll-view-pager:1.1.2') {
    exclude module: 'support-v4'
}


2. AutoScrollViewPager뷰를 포함하는 레이아웃 생성


auto_layout.xml 이라고 해보겠음



3. ImageView뷰만 가지고있는 레이아웃 생성



4. AutoScrollViewPager와 연결할 Adapter 생성


(예를들면 이렇게)(그냥 거의 고정)

public class AutoScrollAdapter extends PagerAdapter {


Context context;
ArrayList<String> data;

public AutoScrollAdapter(Context context, ArrayList<String> data) {
this.context = context;
this.data = data;
}

@Override
public Object instantiateItem(ViewGroup container, int position) {

//뷰페이지 슬라이딩 할 레이아웃 인플레이션
LayoutInflater inflater = (LayoutInflater) context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.listview_search_slide,null);
ImageView image_container = (ImageView) v.findViewById(R.id.ivSearchSlideImage);
Glide.with(context).load(data.get(position)).into(image_container);
container.addView(v);
return v;
}

@Override
public void destroyItem(ViewGroup container, int position, Object object) {

container.removeView((View)object);

}

@Override
public int getCount() {
return data.size();
}

@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
}

5. 마무리!! (AutoScrollAdapter를 사용할 곳에서)



(리스트뷰에서 사용하고있어서 holder를 이용해서 하고있지만)

(autoScroll을 findViewById해서 찾아오든 DataBinding해서 사용하든 결과는 같음)

'프로그래밍 > Android Tip' 카테고리의 다른 글

Tablayout의 탭 변경  (0) 2018.08.31
ListView 중첩출력 현상  (0) 2018.08.29