package com.kk.laodi;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ProgressDialog;
import android.graphics.Bitmap;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
public class AsyncTask1 extends AppCompatActivity {

private Button btn_dl, right_hand, left_hand, right_foot, left_foot;private ImageView img01;private String image_path = "https://img.lianzhixiu.com/uploads/allimg/202104/9999/7490b1acfa.jpg";private ProgressDialog dialog;private MyTask myTask;  // 异步工作写里面,不要创立实例。@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_async_task1);    btn_dl = (Button)this.findViewById(R.id.btn_dl);    right_hand = (Button)this.findViewById(R.id.right_hand);    right_foot = (Button)this.findViewById(R.id.right_foot);    left_hand = (Button)this.findViewById(R.id.left_hand);    left_foot = (Button)this.findViewById(R.id.left_foot) ;    img01 = (ImageView)this.findViewById(R.id.img01);    dialog = new ProgressDialog(this);    dialog.setTitle("提醒");    dialog.setMessage("正在下载,[PayPal下载](https://www.gendan5.com/wallet/PayPal.html)请稍后...");    dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);  // 对话框外面设置进度条。最初显示对话框就能够。

// dialog.setCancelable(false); // 设置不能隐没

    btn_dl.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View v) {            if(myTask != null && !myTask.isCancelled()) {                return;            }            myTask = new MyTask();            myTask.execute(image_path);        }    });    left_hand.setOnClickListener(new View.OnClickListener() {        @Override        public void onClick(View v) {            if(myTask !=null && myTask.getStatus() == AsyncTask.Status.RUNNING){                myTask.cancel(true);            }        }    });}public class MyTask extends AsyncTask<String, Integer, Bitmap>{    @Override    protected void onPreExecute() {        super.onPreExecute();

// dialog.show();

    }    @Override    protected void onProgressUpdate(Integer... values) {        super.onProgressUpdate(values);

// dialog.setProgress(values[0]);

        if(isCancelled()){            return;        }        switch (values[0]) {            case 1:                left_foot.setText("点我");                break;            case 2:                left_hand.setText("点我");                break;            case 3:                right_foot.setText("点我");                break;            case 4:                right_hand.setText("点我");                break;            case 5:                left_foot.setText("左脚");                break;            case 6:                left_hand.setText("左手");                break;            case 7:                right_foot.setText("右脚");                break;            case 8:                right_hand.setText("右手");                break;        }    }    @Override    protected Bitmap doInBackground(String... params) {        /**         * 实现闪按钮性能         */        int i = 0;        while(i <= 100){            if(isCancelled()){                break;            }            publishProgress(i);            i = i % 8;            delay_ms(2000);            publishProgress(i);            i++;        }

//

        return null;    }    @Override    protected void onPostExecute(Bitmap result) {        super.onPostExecute(result);        dialog.dismiss();        img01.setImageBitmap(result);    }}public void delay_ms(int t) {    try    {        Thread.currentThread().sleep(t);//毫秒    }    catch(Exception e){    }}

}