package com.example.samsung.myapplication;
import android.graphics.Color;
import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.shapes.RoundRectShape;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView;
import android.widget.LinearLayout;
public class MainActivity extends ActionBarActivity {
LinearLayout mLinearLayout;
Animation anim;
ImageView i;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mLinearLayout = new LinearLayout(this);
float[] array = new float[]{20, 20, 20, 20, 20, 20, 20, 20};
ShapeDrawable rect = new ShapeDrawable(new RoundRectShape(array, null, null));
rect.setIntrinsicHeight(100);
rect.setIntrinsicWidth(200);
rect.getPaint().setColor(Color.BLUE);
ImageView i = new ImageView(this);
i.setImageDrawable(rect);
i.setVisibility(View.VISIBLE);
anim = AnimationUtils.loadAnimation(this, R.anim.rotate);
mLinearLayout.addView(i);
setContentView(mLinearLayout);
}
}
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<rotate
android:id="@+id/rotate"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromDegrees="0"
android:toDegrees="360"
android:pivotX="25%"
android:pivotY="25%"
android:duration="6000" />
</set>
교재에 있는 뷰 애니메이션을 그대로 작성한 코드 입니다.
이 코드는 실행하면 자동으로 회전하는데
터치이벤트를 달아서 터치하면 회전하게 하고 싶습니다.
ontouchevent를 달려고 하는데 View클래스를 내부 클래스로 작성하면
there is no default constructor available in android.view.view
이렇게 오류가 뜨더라구요.
어떻게 해결해야 하나요??
처음 배우는 과정이라 어려운게 많네요;;
아시는 분은 도와주셨으면 좋겠습니다.