안녕하세요 초보개발자입니다..
일단 소스부터 보시죠..
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO Auto-generated method stub
setContentView(R.layout.activity_detail_product);
am.addactivity(this);
try {
//listview header setting
Intent intent = getIntent();
String strdata = intent.getExtras().getString("selectitem");
int selectposition = intent.getExtras().getInt("selectposition");
JSONArray dataarray = new JSONArray(strdata);
detail_pager = (ViewPager)findViewById(R.id.detail_pager);
adapter = new ViewPagerAdaper(this);
detail_pager.setAdapter(adapter);
activity
package com.newtalktalk.adapter;
import com.activity.intro.R;
import android.content.Context;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
public class ViewPagerAdaper extends PagerAdapter implements OnTouchListener{
private Context mcon;
private LayoutInflater mInflater;
private ViewPager testpager;
private testpageradapter adapter;
public ViewPagerAdaper(Context conn) {
// TODO Auto-generated constructor stub
this.mcon = conn;
mInflater = LayoutInflater.from(conn);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return 3;
}
@Override
public Object instantiateItem(View pager, int position) {
// TODO Auto-generated method stub
View view = null;
try{
view = mInflater.inflate(R.layout.detailproduct_listview_header, null);
testpager = (ViewPager)view.findViewById(R.id.testpager);
adapter = new testpageradapter(mcon);
testpager.setAdapter(adapter);
testpager.setOnTouchListener(this);
if(position == 0){
}else{
}
}catch (Exception e) {
// TODO: handle exception
Log.d("ErrorLog", "ViewPagerAdapter : " + e.toString());
}
((ViewPager)pager).addView(view, 0);
return view;
}
//뷰 객체 삭제
@Override
public void destroyItem(View pager, int position, Object view) {
// TODO Auto-generated method stub
((ViewPager)pager).removeView((View)view);
}
@Override
public boolean isViewFromObject(View pager, Object obj) {
// TODO Auto-generated method stub
return pager == obj;
}
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
Log.d("--", "main touch");
return false;
}
}
viewpager1번 adapter
package com.newtalktalk.adapter;
import com.activity.intro.R;
import android.content.Context;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageButton;
public class testpageradapter extends PagerAdapter{
private Context mcon;
private LayoutInflater mInflater;
public testpageradapter(Context conn) {
// TODO Auto-generated constructor stub
this.mcon = conn;
mInflater = LayoutInflater.from(conn);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return 2;
}
@Override
public Object instantiateItem(View pager, int position) {
// TODO Auto-generated method stub
View view = null;
try{
view = mInflater.inflate(R.layout.detailproduct_titleimg, null);
if(position == 0){
ImageButton testid = (ImageButton)view.findViewById(R.id.testid) ;
// testid.setOnTouchListener(this);
}else{
}
}catch (Exception e) {
// TODO: handle exception
Log.d("ErrorLog", "ViewPagerAdapter : " + e.toString());
}
((ViewPager)pager).addView(view, 0);
return view;
}
//뷰 객체 삭제
@Override
public void destroyItem(View pager, int position, Object view) {
// TODO Auto-generated method stub
((ViewPager)pager).removeView((View)view);
}
@Override
public boolean isViewFromObject(View pager, Object obj) {
// TODO Auto-generated method stub
return pager == obj;
}
}
viewpager2번 adapter입니다..
제가 원하는 그림은..
이런그림인데요..
viewpager 2개가 따로 좌우로 스크롤 되기를 원합니다..
이벤트를 가로채거나 우선순위를 정해줘야 하는데..
별에 별 방법을 다 써봐도..도저히 안되네요..ㅠㅠ
도와주세요..ㅠㅠ