굉장히 복잡한데요...

한방에 말씀드리면 마지막 포지션 값에서는 확대축소도 안되고요 

마지막 포지션에서 다른 탭액티버티의 뷰페이저를 다시 열면 인덱스 오류가 나네요.....

마지막 전 포지션에서만 해도 괜찮은데 다음 포지션에서는 에러가 나네요 

그림에서 보면요 
탭호스트로 구성된 화면에서

리스트뷰의 하나를 선택하면 탭호스트가 옮겨지고 뷰페이져가 뿌려집니다 

여기서 이미지가 4개일 경우에는 4번째 이미지에서 다시 탭호스트의 처음메뉴를 클릭후 

리스트뷰에서 다른 리스트를 클릭시 에러가 납니다

3번째 이미지에서만 선택해도 에러가 나지 않는데 ㅠ 마지막 그림에서만 에러가 나네요 

네번째이미지는 확대 축소도 안되고요 ㅠㅠ

정말 설명 못했지만 한번 부탁드립니다... 

02-13 17:15:05.028: I/check(8499): /2012/Gross/AC120002161/
02-13 17:15:05.048: I/check(8499): position4
02-13 17:15:05.048: W/dalvikvm(8499): threadid=1: thread exiting with uncaught exception (group=0x40bf61f8)
02-13 17:15:05.068: E/AndroidRuntime(8499): FATAL EXCEPTION: main
02-13 17:15:05.068: E/AndroidRuntime(8499): java.lang.IndexOutOfBoundsException: Invalid index 4, size is 4
02-13 17:15:05.068: E/AndroidRuntime(8499):  at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at java.util.ArrayList.get(ArrayList.java:304)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at com.example.project.Viewer$ImagePagerAdapter.instantiateItem(Viewer.java:305)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.support.v4.view.PagerAdapter.instantiateItem(PagerAdapter.java:110)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.support.v4.view.ViewPager.addNewItem(ViewPager.java:801)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.support.v4.view.ViewPager.populate(ViewPager.java:992)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.support.v4.view.ViewPager.populate(ViewPager.java:881)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1366)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1375)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.measureVertical(LinearLayout.java:660)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.onMeasure(LinearLayout.java:553)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1375)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.measureVertical(LinearLayout.java:660)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.onMeasure(LinearLayout.java:553)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2242)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1375)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.measureVertical(LinearLayout.java:660)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.onMeasure(LinearLayout.java:553)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.measureVertical(LinearLayout.java:812)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.LinearLayout.onMeasure(LinearLayout.java:553)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2242)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.View.measure(View.java:12897)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1202)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2602)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.os.Handler.dispatchMessage(Handler.java:99)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.os.Looper.loop(Looper.java:137)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at android.app.ActivityThread.main(ActivityThread.java:4512)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at java.lang.reflect.Method.invokeNative(Native Method)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at java.lang.reflect.Method.invoke(Method.java:511)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:561)
02-13 17:15:05.068: E/AndroidRuntime(8499):  at dalvik.system.NativeStart.main(Native Method)
02-13 17:20:12.377: W/Resources(8772): Converting to string: TypedValue{t=0x12/d=0x0 a=3 r=0x7f080000}

로그값입니다


@Override
public Object instantiateItem(View container, final int position) {
Context context = Viewer.this;
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.imageadapter, null); 

//View v = inflater.inflate(m_pagerResource[position], null);

//imageView = new ImageView(context);

imageView = (ImageView)v.findViewById(R.id.imageV);
 mGestureDetector = new GestureDetector(Viewer.this, new SimpleGestureListener());
final TextView tv = (TextView)v.findViewById(R.id.tv);
final Button info = (Button)v.findViewById(R.id.info);
final TextView id = (TextView)v.findViewById(R.id.id);
final TextView iman = (TextView)v.findViewById(R.id.iman);
tv.setText(Worklist.selItem.num);
id.setText(Worklist.selItem.ID);
Log.i("check","position"+position);
iman.setText(position+1 +"/"+Worklist.selItem.image); 
Bitmap bitmap= null;
bitmap = BitmapFactory.decodeFile(path+file_name.get(position).substring(1));  //이부분에서 에러납니다
int padding = context.getResources().getDimensionPixelSize(R.dimen.padding_small);
imageView.setPadding(padding, padding, padding, padding);
imageView.setImageBitmap(bitmap);

혹시몰라 소스추가했습니다 ㅠㅠ