
현재는 업을 누르면 저 빨간 포인트가 39까지 쭉 올라갑니다
다운을 누르면 다시 1로 내려가고요
업을 누르면 한칸씩 올라가고 또 업을 누르면 한칸씩 올라가고 다운을 누르면 한칸씩 내려가는걸 해보고싶습니다.
전혀 감이 잡히지않아 이렇게 글을 올려봅니다.
package org.myjob;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.ImageView;
public class MyJob extends AppCompatActivity {
private ImageView image;
private Button button1, button2;
private Animation up, down;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
image = (ImageView) findViewById(R.id.image);
button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
setAnimation(up);
}
});
button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
setAnimation(down);
}
});
/* anim 폴더 안에 정의되어 있는 애니메이션 액션 정보를 로딩합니다. */
up = AnimationUtils.loadAnimation(this, R.anim.up);
down = AnimationUtils.loadAnimation(this, R.anim.down);
}
private void setAnimation(Animation animation) {
animation.setFillAfter(true); //anmation 후에도 그대로 있도록 한다.
animation.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationEnd(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationStart(Animation animation) {
}
});
image.startAnimation(animation);
}
}
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<!--up.xml-->
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="-10"
android:toYDelta="-95%p"
android:duration="1000" />
</set>
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<!--down.xml-->
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="-90%p"
android:toYDelta="0"
android:duration="1000" />
</set>