AdapterViewFlipper

概述:

      当在子View之间进行切换时,会形成动画效果。但是这里面的动画指的是属性动画。

属性:

      android:flipInterval:两个动画之间的间隔时间

      android:autoStart:是否自动在子view之间进行切换。

      android:inAnimation:进入动画

      android:outAnimation:出去的动画

      android:loopViews:是否在子View之间进行循环切换。

      android:animateFirstView:第一个子View进入时是否执行动画

示例

		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		flipper = (AdapterViewFlipper) findViewById(R.id.iv);
		ObjectAnimator animator = ObjectAnimator.ofFloat(flipper,
				"translationX", 0, 200);
		animator.setDuration(5000);
		flipper.setInAnimation(animator);//设置相应的属性动画
		flipper.setAdapter(new BaseAdapter() {

			@Override
			public View getView(int position, View convertView, ViewGroup parent) {
				ImageView iv = new ImageView(MainActivity.this);
				iv.setImageResource(ids[position]);
				iv.setScaleType(ScaleType.FIT_XY);
				LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT,
						LayoutParams.MATCH_PARENT);
				iv.setLayoutParams(lp);
				return iv;
			}

			@Override
			public long getItemId(int position) {
				return position;
			}

			@Override
			public Object getItem(int position) {
				return position;
			}

			@Override
			public int getCount() {
				return ids.length;
			}
		});
		findViewById(R.id.btn1).setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
				flipper.showPrevious();//显示上一个
			}
		});
		findViewById(R.id.btn2).setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
				flipper.showNext();//显示下一个
			}
		});
	


你可能感兴趣的:(AdapterViewFlipper)