Android xml 애니메이션 구현 4 가지 애니메이션 효과 인 스 턴 스 코드

5601 단어 androidxmlanimation
animation 은 네 가지 애니메이션 유형 이 있 습 니 다.각각 알파(투명 한 그 라 데 이 션),rotate(회전),scale(사이즈 신축),translate(이동)입 니 다.두 가지 실현 분 배 는 두 가지 가 있 습 니 다.하 나 는 자바 코드 이 고 다른 하 나 는 XML 입 니 다.제 가 오늘 말 하고 자 하 는 것 은 XML 실현 방법 입 니 다.개인 적 으로 자바 코드 의 실현 방법 이 xml 보다 간단 하 다 고 생각 하기 때문에 필요 한 것 이 있 으 면 자 료 를 찾 아 보 세 요.
먼저 효과 도 를 보 여 드 리 겠 습 니 다.괜 찮 으 시다 면 계속 읽 어 주세요.


다음은 제 네 개의 xml 파일 입 니 다.각각 이 네 가지 애니메이션 형식 을 대표 합 니 다.
alpha.xml
COde:

<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<!--           -->
<!--fromAlpha         1.0     
toAlpha          0.0    
startOffset       
duration         
-->
<alpha 
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:startOffset="500"
android:duration="5000"
/>
</set>
rotate.xml

<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<!--            -->
<!--
fromDegrees    
toDegrees    
pivotX      X   
-->
<rotate 
android:fromDegrees="0"
android:toDegrees="+360"
android:pivotX="50%"
android:pivotY="50%"
android:duration="5000"
/>
</set>
scale.xml

<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<!--            -->
<!--
fromXScale   x   
toXScale  x   
fromYScale   y   
toYScale  y   
pivotX       X   
pivotY       Y   
duration     
-->
<scale 
android:fromXScale="1.0"
android:toXScale="0.0"
android:fromYScale="1.0"
android:toYScale="0.0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="5000"
/>
</set>
translate.xml

<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<!--              -->
<translate 
android:fromXDelta="0%"
android:toXDelta="100%"
android:fromYDelta="0%"
android:toYDelta="0%"
android:duration="5000" 
/>
</set>
다음은 메 인 인터페이스 xml 의 레이아웃 입 니 다.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView 
android:id="@+id/image1"
android:layout_width="match_parent"
android:layout_height="200px"
/>
<ImageView 
android:id="@+id/image2"
android:layout_width="match_parent"
android:layout_height="200px"
/>
<ImageView 
android:id="@+id/image3"
android:layout_width="match_parent"
android:layout_height="200px"
/>
<ImageView 
android:id="@+id/image4"
android:layout_width="match_parent"
android:layout_height="200px"
/>
</LinearLayout>
그리고 Activity 코드.

public class AnimationDemo extends Activity{
private Animation animation,animation1,animation2,animation3;
private ImageView image1,image2,image3,image4;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.animation);
initView();
}
public void initView()
{
animation=AnimationUtils.loadAnimation(AnimationDemo.this, R.anim.rotate);
animation1=AnimationUtils.loadAnimation(AnimationDemo.this, R.anim.scale);
animation2=AnimationUtils.loadAnimation(AnimationDemo.this, R.anim.alpha);
animation3=AnimationUtils.loadAnimation(AnimationDemo.this, R.anim.translate);
image1=(ImageView)findViewById(R.id.image1);
image1.setImageResource(R.drawable.jpeg);
image2=(ImageView)findViewById(R.id.image2);
image2.setImageResource(R.drawable.jpg);
image3=(ImageView)findViewById(R.id.image3);
image3.setImageResource(R.drawable.png);
image4=(ImageView)findViewById(R.id.image4);
image4.setImageResource(R.drawable.gif);
image1.startAnimation(animation);
image2.startAnimation(animation1);
image3.startAnimation(animation2);
image4.startAnimation(animation3);
}
}
자,이렇게 해서 네 가지 애니메이션 효과 가 먼저 나 왔 습 니 다.그리고 또 하나의 지식 이 있 습 니 다.애니메이션 안의 속도 문제 입 니 다.필요 한 것 이 있 으 면 인터넷 바 이 두 에 가서 보 세 요.

좋은 웹페이지 즐겨찾기