public class MainActivity extends Activity {
ViewPager vp;
List<View> l = new ArrayList<View>();
ImageView[] arrIv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//查找控件
vp = (ViewPager) findViewById(R.id.vp);
//构造数据
View v1 = View.inflate(this, R.layout.v1, null);
//添加到集合
l.add(v1);
View v2 = View.inflate(this, R.layout.v2, null);
l.add(v2);
View v3 = View.inflate(this, R.layout.v3, null);
l.add(v3);
View v4 = View.inflate(this, R.layout.v4, null);
l.add(v4);
//设置适配器
vp.setAdapter(new MyAd());
//查找到4个小圆点的ImageView
ImageView div1 = (ImageView) findViewById(R.id.div1);
ImageView div2 = (ImageView) findViewById(R.id.div2);
ImageView div3 = (ImageView) findViewById(R.id.div3);
ImageView div4 = (ImageView) findViewById(R.id.div4);
//放入数组中
arrIv = new ImageView[]{div1,div2,div3,div4};
//给ViewPager设置监听事件
vp.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
// TODO Auto-generated method stub
//循环数组长度
for (int i = 0; i < arrIv.length; i++) {
//判断图片与小圆点是否一致
if(arg0 == i){
//是 设置为实心点
arrIv[i].setBackgroundResource(R.drawable.point_selected);
}else{
//否则设置为空心点
arrIv[i].setBackgroundResource(R.drawable.point_mormal);
}
}
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
//通过v4找到button按钮
Button btn = (Button) v4.findViewById(R.id.btn);
//设置监听事件
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//跳转
Intent in = new Intent(MainActivity.this,Main2Activity.class);
startActivity(in);
}
});
}
class MyAd extends PagerAdapter{
@Override
public int getCount() {
// TODO Auto-generated method stub
return l.size();
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
return arg0 == arg1;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
//添加视图
container.addView(l.get(position));
return l.get(position);
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// TODO Auto-generated method stub
// super.destroyItem(container, position, object);
//移除视图
container.removeView((View) object);
}
}
}
ViewPager vp;
List<View> l = new ArrayList<View>();
ImageView[] arrIv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//查找控件
vp = (ViewPager) findViewById(R.id.vp);
//构造数据
View v1 = View.inflate(this, R.layout.v1, null);
//添加到集合
l.add(v1);
View v2 = View.inflate(this, R.layout.v2, null);
l.add(v2);
View v3 = View.inflate(this, R.layout.v3, null);
l.add(v3);
View v4 = View.inflate(this, R.layout.v4, null);
l.add(v4);
//设置适配器
vp.setAdapter(new MyAd());
//查找到4个小圆点的ImageView
ImageView div1 = (ImageView) findViewById(R.id.div1);
ImageView div2 = (ImageView) findViewById(R.id.div2);
ImageView div3 = (ImageView) findViewById(R.id.div3);
ImageView div4 = (ImageView) findViewById(R.id.div4);
//放入数组中
arrIv = new ImageView[]{div1,div2,div3,div4};
//给ViewPager设置监听事件
vp.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
// TODO Auto-generated method stub
//循环数组长度
for (int i = 0; i < arrIv.length; i++) {
//判断图片与小圆点是否一致
if(arg0 == i){
//是 设置为实心点
arrIv[i].setBackgroundResource(R.drawable.point_selected);
}else{
//否则设置为空心点
arrIv[i].setBackgroundResource(R.drawable.point_mormal);
}
}
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
//通过v4找到button按钮
Button btn = (Button) v4.findViewById(R.id.btn);
//设置监听事件
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//跳转
Intent in = new Intent(MainActivity.this,Main2Activity.class);
startActivity(in);
}
});
}
class MyAd extends PagerAdapter{
@Override
public int getCount() {
// TODO Auto-generated method stub
return l.size();
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
return arg0 == arg1;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
//添加视图
container.addView(l.get(position));
return l.get(position);
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// TODO Auto-generated method stub
// super.destroyItem(container, position, object);
//移除视图
container.removeView((View) object);
}
}
}