Android游戏小demo

天大地大妈咪最大 提交于 2019-12-07 16:04:27

xml文件内容:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"    tools:context=".MainActivity">    <TextView        android:id="@+id/tv_target"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="小样把进度条拖到:100" />    <SeekBar        android:id="@+id/sb_bulsseye"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:max="100"        android:progress="0"/>    <Button        android:id="@+id/btn_help"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="帮助" />    <Button        android:id="@+id/btn_ok"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="搞定" />    <Button        android:id="@+id/btn_replay"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="重新开始" />    <TextView        android:id="@+id/tv_source"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="分数:0" />    <TextView        android:id="@+id/tv_index"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="局数:1" /></LinearLayout>activity文件内容:
package com.example.helloworld;import androidx.appcompat.app.AlertDialog;import androidx.appcompat.app.AppCompatActivity;import androidx.appcompat.widget.TintContextWrapper;import android.content.Context;import android.content.DialogInterface;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.SeekBar;import android.widget.TextView;import java.util.Random;public class MainActivity extends AppCompatActivity {    //属性    TextView tvTarget;    TextView tvSource;    TextView tvIndex;    SeekBar sbBulsseys;    Button btnOk;    Button btnReplay;    Button btnHelp;    int randomSource;    int finalSource = 0;    int index = 1;    Context mContext;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mContext = this;        //一般初始化都会独立成一个方法        findView();        randomOfSource();        setListener();  }    private void setListener() {        //为事件源设置监听        btnOk.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                //点击就会调用这个方法                //算分数                index++;                int currentSource = sbBulsseys.getProgress();                int source = 100 - Math.abs(currentSource-randomSource);                finalSource = source + finalSource;                setViewText();                //按钮点击后就会重新出题                randomOfSource();            }        });        btnReplay.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                //重新生成随机数                randomOfSource();                finalSource = 0;                index = 1;                setViewText();            }        });        btnHelp.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                AlertDialog.Builder builder = new AlertDialog.Builder(mContext);                builder.setTitle("Help")                        .setMessage("这是帮助")                        .setPositiveButton("确认", new DialogInterface.OnClickListener() {                            @Override                            public void onClick(DialogInterface dialog, int which) {                                dialog.dismiss();                            }                        });                AlertDialog dialog = builder.create();                dialog.show();            }        });    }    //因为定义为属性了,不需要传参    private void setViewText(){        tvSource.setText("分数:"+finalSource);        tvIndex.setText("局数:"+index);        sbBulsseys.setProgress(0);    }    private void randomOfSource() {        Random random = new Random();        randomSource = random.nextInt(99) + 1;        tvTarget.setText("小样将进度条拖到:" + randomSource);    }    private void findView() {        tvTarget = (TextView)this.findViewById(R.id.tv_target);        tvIndex =  (TextView)this.findViewById(R.id.tv_index);        tvSource = (TextView)this.findViewById(R.id.tv_source);        sbBulsseys = (SeekBar)this.findViewById(R.id.sb_bulsseye);        btnHelp = (Button)this.findViewById(R.id.btn_help);        btnOk = (Button)this.findViewById(R.id.btn_ok);        btnReplay = (Button)this.findViewById(R.id.btn_replay);    }}

 

 

 

 

 

 


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!