动画

主界面:
public class MainActivity extends AppCompatActivity {

    private ListView listView;
    private ImageView imageView;
    private ArrayList<String> list = new ArrayList<String>();
    private ImageView imageview2;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        listView = (ListView) findViewById(R.id.listview);
        imageView = (ImageView) findViewById(R.id.img);
        imageview2 = (ImageView) findViewById(R.id.img2);
        list.add("帧动画");
        list.add("平移动画");
        list.add("渐变动画");
        list.add("放大动画");
        list.add("旋转加平移");
        listView.setAdapter(new MyAdapter());
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            private AnimationDrawable ani;
            @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                switch (position){
                    case 0:
                        imageview2.setVisibility(View.GONE);
                        imageView.setVisibility(View.VISIBLE);
                        imageView.setImageResource(R.drawable.frame);
                        ani = (AnimationDrawable)imageView.getDrawable();
                        ani.start();
                        break;
                    case 1:
                        imageView.setVisibility(View.GONE);
                        imageview2.setVisibility(View.VISIBLE);
                        TranslateAnimation tr=new TranslateAnimation(Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,0,Animation.RELATIVE_TO_SELF,0f,Animation.RELATIVE_TO_SELF,2f);
                        tr.setDuration(3000);
                        imageview2.startAnimation(tr);
                        break;
                    case 2:
                        imageView.setVisibility(View.GONE);
                        imageview2.setVisibility(View.VISIBLE);
                        AlphaAnimation al=new AlphaAnimation(0.5f,1f);
                        al.setDuration(3000);
                        imageview2.startAnimation(al);
                        break;
                    case 3:
                        imageview2.setVisibility(View.GONE);
                        imageview2.setVisibility(View.VISIBLE);
                        ScaleAnimation ro=new ScaleAnimation(Animation.RELATIVE_TO_SELF,3,Animation.RELATIVE_TO_SELF,3);
                        ro.setDuration(3000);
                        imageview2.startAnimation(ro);
                        break;
                    case 4:
                        imageView.setVisibility(View.GONE);
                        imageview2.setVisibility(View.VISIBLE);
                        Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.set);
                        imageview2.startAnimation(animation);
                        break;
                }
            }
        });
    }
    class MyAdapter extends BaseAdapter{
        @Override
        public int getCount() {
            return list.size();
        }
        @Override
        public Object getItem(int position) {
            return list.get(position);
        }
        @Override
        public long getItemId(int position) {
            return position;
        }
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            convertView=View.inflate(MainActivity.this,android.R.layout.simple_list_item_1,null);
            TextView tv= (TextView) convertView.findViewById(android.R.id.text1);
            tv.setText(list.get(position));
            return convertView;
        }
    }
}
这个XML是新建一个anim里创建XML
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:fillAfter="true"
    android:fillEnabled="true">

    <rotate
        android:duration="1000"
        android:fromDegrees="0"
        android:pivotX="50%"
        android:pivotY="50%"
        android:toDegrees="-100"
        android:toYScale="0.0" />


    <translate
        android:duration="2000"
        android:fromXDelta="0"
        android:fromYDelta="0"
        android:toXDelta="1000"
        android:toYDelta="0" />
</set>
 这个XML在drawable里创建XML
<?xml version="1.0" encoding="utf-8"?>
<animation-list xmlns:android="http://schemas.android.com/apk/res/android"
    android:oneshot="false"
    >
   
<item android:drawable="@drawable/img0" android:duration="50"></item>
。。。</animation-list>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值