【動畫】TranslateAnimation 移動控件

【上移動畫,下面代碼是將指定view向上移動到界面以外】
                AnimationSet animationSet = new AnimationSet(true);
		int w = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
		int h = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
		title.measure(w, h);// 我這裏title是界面的標題區域的view
		int height = title.getMeasuredHeight();// 獲取到標題的高度
		TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, 0, -height);// 設置標題從座標爲0處開始移到標題的負高度
		translateAnimation.setDuration(500);// 設置移動速度
		animationSet.setFillEnabled(true);
		animationSet.addAnimation(translateAnimation);
		animationSet.setAnimationListener(new AnimationListener() {

			@Override
			public void onAnimationStart(Animation animation) {

			}

			@Override
			public void onAnimationRepeat(Animation animation) {

			}

			@Override
			public void onAnimationEnd(Animation animation) {
				ll_title.setVisibility(View.GONE);
				mIntent = new Intent(mContext, CloudVoiceRecordSearchActivity.class);
				startActivityForResult(mIntent, REQUEST_SEARCH);
			}
		});
		view.startAnimation(animationSet);// view在我這裏是整個activity的界面【也就是我xml界面佈局的最外層的view的id】

【同上相反移動】

                AnimationSet animationSet = new AnimationSet(true);
		int w = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
		int h = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
		title.measure(w, h);
		int height = title.getMeasuredHeight();
		TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, -height, 0);
		translateAnimation.setDuration(500);
		animationSet.setFillAfter(true);
		animationSet.setFillEnabled(true);
		animationSet.addAnimation(translateAnimation);
		animationSet.setAnimationListener(new AnimationListener() {

			@Override
			public void onAnimationStart(Animation animation) {

			}

			@Override
			public void onAnimationRepeat(Animation animation) {

			}

			@Override
			public void onAnimationEnd(Animation animation) {
			}
		});
		view.startAnimation(animationSet);

【我這裏是將整個界面向上移動title的高度,和向下移動title的高度】

文章寫得不好,不要噴哦~


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章