4 가지 추가 애니메이션
17389 단어 필기 하 다.
구현 방식: 코드 구현
/**
*
*/
private void startAlpha2(){
AlphaAnimation animation = new AlphaAnimation(1,0);
animation.setDuration(2000);
animation.setRepeatCount(1000000);
animation.start();
iv6.setAnimation(animation);
}
startAlpha2()
XML 구현: 1. 먼저 res 다음 에 폴 더 를 만 듭 니 다. 여기 서 anim 2 라 고 명명 합 니 다. anim 폴 더 다음 에 alpha. xml 파일 을 새로 만 듭 니 다.
<alpha
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="3000"
android:fromAlpha="1"
android:toAlpha="0" // 1-->0
android:repeatCount="10000"
>
</alpha>
3. 그리고 Activity 에 방법 을 써 서 xml 파일 을 찾 습 니 다.
/**
* XML
* @param iv
*/
private void startAlpha(ImageView iv) {
AlphaAnimation animation = (AlphaAnimation) AnimationUtils.loadAnimation(this,R.anim.alpha);
// start
animation.start();
iv.setAnimation(animation);
}
4. 호출 시 startAlpha (imageview) 를 사용 할 수 있 습 니 다.2. Scale Animation 코드 구현
/**
*
*/
private void startScale1(ImageView iv){
ScaleAnimation animation = new ScaleAnimation(1f, 0.2f,1f,0.2f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);
//
animation.setRepeatCount(1000000);
//
animation.setDuration(1000);
// :Animation.REVERSE ,Animation.RESTART
animation.setRepeatMode(Animation.REVERSE);
animation.start();
// iv
iv.setAnimation(animation);
}
startScale1(imageview)
XML 구현: 1. anim 폴 더 아래 scale. xml 파일 만 들 기
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration = "2000"
//
android:fromXScale="0"
android:fromYScale="0"
//
android:pivotX="50%"
android:pivotY="50%"
//
android:toXScale="100%"
android:toYScale="100%"
//
android:repeatCount="1000"
></scale>
2. Activity 에서 호출
/**
* XML
*/
private void startScale2(){
ScaleAnimation animation = (ScaleAnimation) AnimationUtils.loadAnimation(this,R.anim.scale);
animation.start();
iv8.setAnimation(animation);
}
3. TranslateAnimation 코드 구현
/**
*
*/
private void statTweenTran1(ImageView iv) {
/*
TranslateAnimation
fromXType:X (1. 2. 3. )
fromXValue:X
。
*/
TranslateAnimation animation = new TranslateAnimation(
Animation.RELATIVE_TO_SELF,
0f,
Animation.RELATIVE_TO_SELF,
2f,
Animation.RELATIVE_TO_SELF,
0f,
Animation.RELATIVE_TO_SELF,
4f);
//
animation.setRepeatCount(1000000);
//
animation.setDuration(1000);
// :Animation.REVERSE ,Animation.RESTART
animation.setRepeatMode(Animation.REVERSE);
animation.start();
// iv
iv.setAnimation(animation);
}
XML 구현 1. anim 에서 새 xml 파일 translate. xml
<translate
xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="200%"
android:fromYDelta="0"
android:toYDelta="0"
android:duration="2000"
android:repeatCount="infinite"
android:repeatMode="reverse"
/>
2. Activity 건설 방법 호출
/**
* xml
*
* : , start; ,
*/
private void startTweenTran(ImageView iv) {
// 1. xml
TranslateAnimation animation = (TranslateAnimation) AnimationUtils.loadAnimation(this, R.anim.translate);
// ( start, )
animation.start();
// iv
iv.setAnimation(animation);
}
4. RotateAnimation XML 구현 1. anim 에서 rotate. xml 파일 새로 만 들 기 2. Activity 에서 호출
/**
* ,
* @param iv
*/
private void startRotateAnim(ImageView iv) {
// ,
RotateAnimation animation = (RotateAnimation) AnimationUtils.loadAnimation(this, R.anim.rotate);
animation.start();
iv.setAnimation(animation);
}
5. 다양한 애니메이션 조합 1. 새로 만 든 xml 파일 에서 set 노드 를 선택해 야 합 니 다. 다음 과 같은 네 가지 애니메이션 조합 입 니 다.
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="1000"
android:fillAfter="true"
android:repeatMode="restart">
<scale
android:duration="2000"
android:fromXScale="0"
android:fromYScale="0"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="1200"
android:toXScale="100%"
android:toYScale="100%" />
<alpha
android:duration="3000"
android:fromAlpha="1"
android:repeatCount="10000"
android:toAlpha="0" />
<rotate
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="1000"
android:toDegrees="360" />
<translate
android:fromXDelta="0"
android:repeatCount="1000"
android:toXDelta="200%" />
set>
2. Activity 에서 의 호출 실현
/**
* xml
* + ,
*/
private void startAnim(ImageView iv) {
Animation animation = AnimationUtils.loadAnimation(this, R.anim.rotate_translate);
animation.start();
iv.setAnimation(animation);
}
6. Activity 점프 애니메이션 실현 1. anim 에서 xml 파일 두 개 를 새로 만 들 고 하 나 는 in 이 고 하 나 는 out 입 니 다.여 기 는 scale 을 예 로 들 면 in.
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration = "2000"
android:fromXScale="0"
android:fromYScale="0"
android:pivotX="50%"
android:pivotY="50%"
android:toXScale="100%"
android:toYScale="100%"/>
out
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration = "2000"
android:fromXScale="100%"
android:fromYScale="100%"
android:pivotX="50%"
android:pivotY="50%"
android:toXScale="0"
android:toYScale="0"
/>
2. 여기 서 우 리 는 시스템 의 리 턴 버튼 을 사용 하여 감청 합 니 다.
/**
*
*
* @param keyCode
* @param event
* @return
*/
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
//
// ,
if (keyCode == KeyEvent.KEYCODE_BACK) {
finish();
overridePendingTransition(R.anim.trans_back_in, R.anim.tran_back_out);
}
return super.onKeyDown(keyCode, event);
}
3. 다른 곳 에서 점프 할 때 도 추가
// Activity
overridePendingTransition(R.anim.trans_back_in,R.anim.tran_back_out);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Dubbo (2): zookeeper 등록 센터Zookeeper 는 Apacahe Hadoop 의 하위 프로젝트 로 트 리 형태의 디 렉 터 리 서비스 로 푸 시 변경 을 지원 하 며 Dubbo 서비스의 등록 센터 로 적합 하 며 산업 강도 가 높 아 생산 환경...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.