前言:代码都调试了,基本上没有问题,如果大家发现bug希望在下方留言,一起学习学习,这项目是上课教的,但是代码我看了一下感觉不是很简便,所以改进了一下,主要是上课那个软件一个按钮一个事件,觉得有点麻烦,然后软件的图标,给大家介绍一个网址,下载地址阿里巴巴矢量图标;

一:运行效果



二:布局代码

<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context=".MainActivity">    <androidx.constraintlayout.widget.Guideline        android:id="@+id/guideline"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:orientation="horizontal"        app:layout_constraintGuide_percent="0.02" />    <androidx.constraintlayout.widget.Guideline        android:id="@+id/guideline2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:orientation="vertical"        app:layout_constraintGuide_percent="0.5" />    <androidx.constraintlayout.widget.Guideline        android:id="@+id/guideline3"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:orientation="horizontal"        app:layout_constraintGuide_percent="0.16" />    <TextView        android:id="@+id/textView"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginTop="8dp"        android:text="A队"        android:textColor="#F44336"        android:textSize="40sp"        android:textStyle="bold"        app:layout_constraintEnd_toStartOf="@+id/textView2"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toStartOf="parent"        app:layout_constraintTop_toTopOf="@+id/guideline" />    <TextView        android:id="@+id/textView2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginTop="8dp"        android:text="B队"        android:textColor="#4D00FE"        android:textSize="40sp"        app:layout_constraintBottom_toBottomOf="@+id/textView"        app:layout_constraintEnd_toEndOf="parent"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toEndOf="@+id/textView"        app:layout_constraintTop_toTopOf="@+id/textView" />    <androidx.constraintlayout.widget.Guideline        android:id="@+id/guideline4"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:orientation="horizontal"        app:layout_constraintGuide_percent="0.31053352" />    <TextView        android:id="@+id/score_a"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginTop="8dp"        android:text="0"        android:textColor="#F44336"        android:textSize="80sp"        android:textStyle="bold"        app:layout_constraintEnd_toStartOf="@+id/score_b"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toStartOf="parent"        app:layout_constraintTop_toTopOf="@+id/guideline3" />    <TextView        android:id="@+id/score_b"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginTop="8dp"        android:text="0"        android:textColor="#4D00FE"        android:textSize="80sp"        android:textStyle="bold"        app:layout_constraintEnd_toEndOf="parent"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toEndOf="@+id/score_a"        app:layout_constraintTop_toTopOf="@+id/guideline3" />    <Button        android:id="@+id/btna_1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:background="#F44336"        android:text="+1"        android:textColor="#201F1F"        app:layout_constraintBottom_toTopOf="@+id/btna_2"        app:layout_constraintEnd_toStartOf="@+id/btnb_1"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toStartOf="parent"        app:layout_constraintTop_toBottomOf="@+id/score_a" />    <Button        android:id="@+id/btna_2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:background="#F44336"        android:text="+2"        app:layout_constraintBottom_toTopOf="@+id/btna_3"        app:layout_constraintEnd_toStartOf="@+id/btnb_2"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toStartOf="parent"        app:layout_constraintTop_toBottomOf="@+id/btna_1" />    <Button        android:id="@+id/btna_3"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginBottom="8dp"        android:background="#F44336"        android:text="+3"        app:layout_constraintBottom_toTopOf="@+id/img_cancel"        app:layout_constraintEnd_toStartOf="@+id/btnb_3"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toStartOf="parent"        app:layout_constraintTop_toBottomOf="@+id/btna_2" />    <androidx.constraintlayout.widget.Guideline        android:id="@+id/guideline5"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:orientation="horizontal"        app:layout_constraintGuide_percent="0.8" />    <Button        android:id="@+id/btnb_1"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:background="#4D00FE"        android:text="+1"        app:layout_constraintBottom_toTopOf="@+id/btnb_2"        app:layout_constraintEnd_toEndOf="parent"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toEndOf="@+id/btna_1"        app:layout_constraintTop_toBottomOf="@+id/score_b" />    <Button        android:id="@+id/btnb_2"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:background="#4D00FE"        android:text="+2"        app:layout_constraintBottom_toTopOf="@+id/btnb_3"        app:layout_constraintEnd_toEndOf="parent"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toEndOf="@+id/btna_2"        app:layout_constraintTop_toBottomOf="@+id/btnb_1" />    <Button        android:id="@+id/btnb_3"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_marginBottom="8dp"        android:background="#4D00FE"        android:text="+3"        app:layout_constraintBottom_toTopOf="@+id/img_reset"        app:layout_constraintEnd_toEndOf="parent"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toEndOf="@+id/btna_3"        app:layout_constraintTop_toBottomOf="@+id/btnb_2" />    <ImageView        android:id="@+id/img_cancel"        android:layout_width="134dp"        android:layout_height="76dp"        android:layout_marginTop="8dp"        android:src="@drawable/back"        app:layout_constraintEnd_toStartOf="@+id/img_reset"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toStartOf="parent"        app:layout_constraintTop_toTopOf="@+id/guideline5" />    <ImageView        android:id="@+id/img_reset"        android:layout_width="134dp"        android:layout_height="76dp"        android:layout_marginTop="8dp"        android:src="@drawable/rsset"        app:layout_constraintEnd_toEndOf="parent"        app:layout_constraintHorizontal_bias="0.5"        app:layout_constraintStart_toEndOf="@+id/img_cancel"        app:layout_constraintTop_toTopOf="@+id/guideline5" /></androidx.constraintlayout.widget.ConstraintLayout>

三:后端代码

package cn.cg.basketballscorer;import android.content.DialogInterface;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.widget.TextView;import androidx.appcompat.app.AlertDialog;import androidx.appcompat.app.AppCompatActivity;public class MainActivity extends AppCompatActivity implements View.OnClickListener {    //定义数组存放加分    private  final  int scoreArray[]={1,2,3};    private  int lastScore_a,lastScore_b,score_a,score_b;    private Button btna_1,btna_2,btna_3,btnb_1,btnb_2,btnb_3;    private ImageView img_cancel,img_rest;    private TextView test_score_a,test_score_b;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        inintView();    }    private void inintView() {        //获取按钮id        btna_1=findViewById(R.id.btna_1);        btna_2=findViewById(R.id.btna_2);        btna_3=findViewById(R.id.btna_3);        btnb_1=findViewById(R.id.btnb_1);        btnb_2=findViewById(R.id.btnb_2);        btnb_3=findViewById(R.id.btnb_3);        //得分情况和清零        img_cancel=findViewById(R.id.img_cancel);        img_rest=findViewById(R.id.img_reset);        test_score_a=findViewById(R.id.score_a);        test_score_b=findViewById(R.id.score_b);        //按钮实现监听        btna_1.setOnClickListener(this);        btna_2.setOnClickListener(this);        btna_3.setOnClickListener(this);        btnb_1.setOnClickListener(this);        btnb_2.setOnClickListener(this);        btnb_3.setOnClickListener(this);        img_rest.setOnClickListener(this);        img_cancel.setOnClickListener(this);    }    //点击事件    @Override    public void onClick(View v) {        switch (v.getId()){            case R.id.btna_1:                scoreAdd(0,scoreArray[0]);                             break;            case R.id.btna_2:                scoreAdd(0,scoreArray[1]);                                break;            case R.id.btna_3:                scoreAdd(0,scoreArray[2]);                                break;            case  R.id.btnb_1:                scoreAdd(1,scoreArray[0]);                                break;            case  R.id.btnb_2:                scoreAdd(1,scoreArray[1]);                                break;            case  R.id.btnb_3:                scoreAdd(1,scoreArray[2]);                                break;            case  R.id.img_reset:                reset();                break;            case  R.id.img_cancel:                cancel();                break;                default:                break;        }    }    //取消上次加分操作    private void cancel() {        if (score_a!=0&&score_a-lastScore_a>=0){            score_a-=lastScore_a;        }        if (score_b!=0&&score_b-lastScore_b>=0){            score_b-=lastScore_b;        }        ShowText();    }    //重置功能,弹出提示框    private void reset() {        //弹出提示框,提示用户你是否要重置        AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);        builder.setTitle("提示")                .setIcon(R.drawable.pointout)                .setMessage("你确定要重置分数吗?")                .setPositiveButton("确定", new DialogInterface.OnClickListener() {                    @Override                    public void onClick(DialogInterface dialog, int which) {                        score_a=0;                        score_b=0;                       ShowText();                        dialog.dismiss();;                    }                })                .setNegativeButton("取消", new DialogInterface.OnClickListener() {                    @Override                    public void onClick(DialogInterface dialog, int which) {                        dialog.dismiss();                    }                });          AlertDialog  dialog=builder.create();          dialog.show();    }    //退出软件,弹出提示框    @Override    public void onBackPressed() {        AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);        builder.setTitle("提示")                .setIcon(R.drawable.warn)                .setMessage("你确定要退出?")                .setPositiveButton("确定", new DialogInterface.OnClickListener() {                    @Override                    public void onClick(DialogInterface dialog, int which) {                        MainActivity.this.finish();                    }                })                .setNegativeButton("取消", new DialogInterface.OnClickListener() {                    @Override                    public void onClick(DialogInterface dialog, int which) {                        dialog.dismiss();                    }                });        AlertDialog  dialog=builder.create();        dialog.show();    }    //进行加分    private   void  scoreAdd(int Tage,int score){        //Tage:   0:a  1:b        if (Tage==0||Tage==1){            if (Tage==0){                //表示a进行加分                lastScore_b=0;                lastScore_a=score;                score_a+=lastScore_a;            }else if (Tage==1){                //表示对b进行加分                lastScore_a=0;                lastScore_b=score;                score_b+=lastScore_b;            }           ShowText();        }    }    //进行显示    private  void ShowText(){        test_score_a.setText(Integer.toString(score_a));        test_score_b.setText(Integer.toString(score_b));    }}

四:项目中使用的图片

更多相关文章

  1. Android(安卓)Studio目录结构浅析
  2. Android用代码完成颜色渐变处理
  3. 温馨提示:Android(安卓)的 XML 文件是是区分大小写的
  4. 《Android第一行代码》书籍划重点记录
  5. 布局之六GridLayout,Space
  6. Xamrin开发安卓笔记(一)
  7. Android(安卓)弹出框LemonBubble提示控件
  8. Android(安卓)Studio Tips(OSX)
  9. [置顶] 声波通信(声波传输)在iOS、Android中的应用场景深入分析(含

随机推荐

  1. 【Android】利用Strings资源文件来格式化
  2. Android(安卓)sd存储总结
  3. 【Tech-Android-View】Android4.0的横竖
  4. Android(安卓)搭建MVP+Retrofit+RxJava网
  5. Android获取目录
  6. 解决 android "launch error failed to c
  7. 【Android】WebView不完全总结
  8. React Navigation-StackNavigator
  9. android 开发 - 结束所有activity
  10. Failed to fetch url https //dl.google.