请教一下为什么这个平移的效果展示不出来?


import androidx.appcompat.app.AppCompatActivity;

import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.content.Intent;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.os.Message;
import android.os.TestLooperManager;
import android.support.v4.app.INotificationSideChannel;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import java.util.Timer;
import java.util.TimerTask;
import java.util.logging.Handler;
import java.util.logging.LogRecord;

public class MainActivity extends AppCompatActivity{

    private Button btn_translation;
    private Button btn_scale;
    private Button btn_rotation;
    private Button btn_alpha;
    private TextView text01;
    private Button btn_combination;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        initView();
        initAnimator1();

        MyThread1 myThread1 = new MyThread1();
        myThread1.start();

    }

    private void initAnimator1() {
        btn_translation.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                ObjectAnimator translationY = new ObjectAnimator().ofFloat(text01,"translationY",0f,1000f);
                translationY.setDuration(8000);
                translationY.start();

                Toast.makeText(MainActivity.this,"开始平移",Toast.LENGTH_SHORT).show();
            }
        });
    }

    private void initView() {
        btn_translation = (Button) this.findViewById(R.id.btn_translation);
        btn_scale = (Button) this.findViewById(R.id.btn_scale);
        btn_rotation = (Button) this.findViewById(R.id.btn_rotation);
        btn_alpha = (Button) this.findViewById(R.id.btn_alpha);
        btn_combination = (Button)this.findViewById(R.id.btn_combination);
        text01 = (TextView) this.findViewById(R.id.text01);
    }

    class MyThread1 extends Thread{
        @Override
        public void run() {
            btn_translation.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {

                    AnimatorSet set = new AnimatorSet();
                    ObjectAnimator scaleX = new ObjectAnimator().ofFloat(text01,"scaleX",1,2,1f);
                    ObjectAnimator scaleY = new ObjectAnimator().ofFloat(text01,"scaleY",1,2,1f);
                    set.setDuration(8000);
                    set.playTogether(scaleY,scaleX);
                    set.start();

                    new CountDownTimer(8000, 1000) {
                        public void onTick(long millisUntilFinished) {
                            text01.setText("倒计时:" + millisUntilFinished / 1000);
                        }
                        public void onFinish() {
                            text01.setText("完成");
                        }
                    }.start();

                    try {
                        Thread.sleep(1000*8);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
            });

        }
    }
}

线程里调用按钮的点击事件是不对的

所有操作ui的和事件处理 请在主线程去处理

线程内的事件可以用handle message分出去,然后用handle runable实现ui操作

无解!