package com.example.p2;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;
import android.os.SystemClock;
import android.view.View;
import android.widget.Button;
import android.widget.Chronometer;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity implements View.OnClickListener, Chronometer.OnChronometerTickListener {    private Chronometer chronometer;
    private Button btn_start, btn_stop, btn_base, btn_format;    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
    }    private void initView() {
        chronometer = (Chronometer) findViewById(R.id.chronometer);
        btn_start = (Button) findViewById(R.id.btnStart);
        btn_stop = (Button) findViewById(R.id.btnStop);
        btn_base = (Button) findViewById(R.id.btnReset);
        btn_format = (Button) findViewById(R.id.btn_format);        chronometer.setOnChronometerTickListener(this);
        btn_start.setOnClickListener(this);
        btn_stop.setOnClickListener(this);
        btn_base.setOnClickListener(this);
        btn_format.setOnClickListener(this);    }    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btnStart:
                chronometer.start();// 开始计时
                break;
            case R.id.btnStop:
                chronometer.stop();// 停止计时
                break;
            case R.id.btnReset:
                chronometer.setBase(SystemClock.elapsedRealtime());// 复位
                break;
            case R.id.btn_format:
                chronometer.setFormat("Time:%s");// 更改时间显示格式
                break;
        }
    }    @Override
    public void onChronometerTick(Chronometer chronometer) {
        String time = chronometer.getText().toString();
        if (time.equals("00:00")) {
            Toast.makeText(MainActivity.this, "时间到了~", Toast.LENGTH_SHORT).show();
        }
    }    TextView pointTextView;
    Button plusThreePointButton;
    Button plusTwoPointButton;
    Button plusOnePointButton;
    Button resetButton;
    Button plusThreePointButtonTeamb;
    Button plusTwoPointButtonTeamb;
    Button plusOnePointButtonTeamb;
    {
        pointTextView = findViewById(R.id.number);
        plusThreePointButton = findViewById(R.id.main_plus_3point);
        plusTwoPointButton = findViewById(R.id.main_plus_2point);
        plusOnePointButton = findViewById(R.id.main_plus_1point);
        plusThreePointButtonTeamb = findViewById(R.id.plus_3point_teamb);
        plusTwoPointButtonTeamb = findViewById(R.id.plus_2point_teamb);
        plusOnePointButtonTeamb = findViewById(R.id.plus_1point_teamb);
        resetButton = findViewById(R.id.reset);
        plusThreePointButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String currentPoint = pointTextView.getText().toString();
                int point = Integer.parseInt(currentPoint);                point = point + 3;                pointTextView.setText(String.valueOf(point));                Toast.makeText(pointTextView.getContext(), "Hi", Toast.LENGTH_SHORT).show();
            }
        });
        resetButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String currentPoint = pointTextView.getText().toString();
                int point = Integer.parseInt(currentPoint);                point = 0;                pointTextView.setText(String.valueOf(point));
            }
        });
    }
}

解决方案 »

  1.   


    public void onChronometerTick(Chronometer chronometer) {
          String time = chronometer.getText().toString();
          if (time.equals("00:00")) {
                Toast.makeText(MainActivity.this, "时间到了~", Toast.LENGTH_SHORT).show();
          }
    }第一个地方,最好将“00:00”这个常量放在前面,其实更好的是用TextUtils.equals进行判断。int point = Integer.parseInt(currentPoint);第二个地方,Integer.parseInt特别容易抛NumberFormatException异常,这个需要进行catch。