안녕하세요 푸민입니다.
안드로이드 개발에 ViewPager 객체를 굉장히 많이 사용하는것 같아요!
가로 스와이프로 화면을 바꾸는 등 UI/UX에서 굉장히 중요한 요소이기 때문인것 같습니다.
간단하게 ViewPager를 사용해 볼까요?
1. 해당 프로젝트에 android-support-v4.jar 파일을 추가해줍니다.
2. main.xml 에 ViewPager를 삽입합니다.
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/main_pager"
/>
3. 페이지 레이아웃을 작성합니다. data.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<!-- 원하는 형태로 작성해주세요 -->
</FrameLayout>
4. PagerAdapter 클래스를 상속받은 MyAdapter 클래스를 작성합니다.
public class TestAdapter extends PagerAdapter {
private LayoutInflater mInflater;
public TestAdapter(Context c){
super();
mInflater = LayoutInflater.from(c);
}
@Override
public int getCount() {
return 0;//데이터 수만큼으로 변경해야되요
}
@Override
public Object instantiateItem(View pager, int position) {
View v = null;
v = mInflater.inflate(R.layout.data_ad, null);
//원하는 기능 추가
((ViewPager)pager).addView(v, 0);
return v;
}
@Override
public void destroyItem(View pager, int position, Object view) {
((ViewPager)pager).removeView((View)view);
}
@Override
public boolean isViewFromObject(View pager, Object obj) {
return pager == obj;
}
@Override public void restoreState(Parcelable arg0, ClassLoader arg1) {}
@Override public Parcelable saveState() { return null; }
@Override public void startUpdate(View arg0) {}
@Override public void finishUpdate(View arg0) {}
}
5. MainActivity 에서 ViewPager 객체에다 MyAdapter 를 설정해줍니다.
pager = (ViewPager)findViewById(R.id.main_pager);
adapter = new MyAdapter(context);
pager.setAdapter(adapter);
'Development > Android' 카테고리의 다른 글
[안드로이드] 진동, 소리, 무음, 디바이스 상태 정보 받아오기! (0) | 2015.11.15 |
---|---|
[안드로이드] 스키마를 이용하여 액티비티 호출하기! Custom Url Scheme! (0) | 2015.11.14 |
[안드로이드] ADB 명령어 모음 (0) | 2015.11.12 |
[안드로이드][이미지처리] 이미지 블러처리 (0) | 2015.11.11 |
[안드로이드] Bitmap 흑백 이미지 만들기2 (0) | 2015.11.03 |
댓글