当前位置:首页 > 谈天说地

Android Studio实现井字游戏

34资源网2022-01-12605

本文实例为大家分享了android studio实现井字游戏的具体代码,供大家参考,具体内容如下

mainactivity.java 

import android.content.intent;
import android.os.bundle;
import android.view.view;
import android.widget.button;
import android.widget.toast;
 
import androidx.appcompat.app.appcompatactivity;
 
public class mainactivity extends appcompatactivity {
 
    button b1, b2, b3, b4, b5, b6, b7, b8, b9;
    int turn;
    int draw;
    button playagainbutton;
 
 
    @override
    protected void oncreate(bundle savedinstancestate) {
        super.oncreate(savedinstancestate);
        setcontentview(r.layout.activity_main);
 
        b1 = (button) findviewbyid(r.id.b1);
        b2 = (button) findviewbyid(r.id.b2);
        b3 = (button) findviewbyid(r.id.b3);
        b4 = (button) findviewbyid(r.id.b4);
        b5 = (button) findviewbyid(r.id.b5);
        b6 = (button) findviewbyid(r.id.b6);
        b7 = (button) findviewbyid(r.id.b7);
        b8 = (button) findviewbyid(r.id.b8);
        b9 = (button) findviewbyid(r.id.b9);
        playagainbutton = (button) findviewbyid(r.id.playagainbutton);
        turn = 1;
        draw = 1;
 
        playagainbutton.setonclicklistener(new view.onclicklistener() {
            public void onclick(view view) {
                intent intent = new intent(getapplicationcontext(), mainactivity.class);
                startactivity(intent);
                finish();
            }
 
        });
 
 
        b1.setonclicklistener(new view.onclicklistener() {
 
            @override
            public void onclick(view view) {
 
                if (b1.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b1.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b1.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
        b2.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
 
                if (b2.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b2.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b2.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
        b3.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
 
                if (b3.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b3.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b3.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
        b4.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
 
                if (b4.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b4.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b4.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
        b5.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
 
                if (b5.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b5.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b5.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
        b6.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
 
                if (b6.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b6.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b6.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
        b7.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
 
                if (b7.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b7.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b7.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
        b8.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
 
                if (b8.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b8.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b8.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
        b9.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view view) {
 
                if (b9.gettext().tostring().equals("")) {
                    if (turn == 1) {
                        turn = 2;
                        b9.settext("x");
                    } else if (turn == 2) {
                        turn = 1;
                        b9.settext("o");
                    }
 
                }
                endgame();
                draw++;
            }
        });
 
 
    }
 
    public void endgame() {
        string a, b, c, d, e, f, g, h, i;
        boolean end = false;
 
        a = b1.gettext().tostring();
        b = b2.gettext().tostring();
        c = b3.gettext().tostring();
 
        d = b4.gettext().tostring();
        e = b5.gettext().tostring();
        f = b6.gettext().tostring();
 
        g = b7.gettext().tostring();
        h = b8.gettext().tostring();
        i = b9.gettext().tostring();
 
        if (a.equals("x") && b.equals("x") && c.equals("x")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
 
        }
        if (a.equals("x") && e.equals("x") && i.equals("x")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
        }
        if (a.equals("x") && d.equals("x") && g.equals("x")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
        }
        if (b.equals("x") && e.equals("x") && h.equals("x")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
        }
        if (c.equals("x") && f.equals("x") && i.equals("x")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
        }
        if (d.equals("x") && e.equals("x") && f.equals("x")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
        }
        if (g.equals("x") && h.equals("x") && i.equals("x")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
        }
        if (g.equals("x") && e.equals("x") && c.equals("x")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
        }
        if (a.equals("o") && b.equals("o") && c.equals("o")) {
            toast.maketext(mainactivity.this, "winner player o!", toast.length_long).show();
            end = true;
        }
        if (a.equals("o") && e.equals("o") && i.equals("o")) {
            toast.maketext(mainactivity.this, "winner player o!", toast.length_long).show();
            end = true;
        }
        if (a.equals("o") && d.equals("o") && g.equals("o")) {
            toast.maketext(mainactivity.this, "winner player o!", toast.length_long).show();
            end = true;
        }
        if (b.equals("o") && e.equals("o") && h.equals("o")) {
            toast.maketext(mainactivity.this, "winner player o!", toast.length_long).show();
            end = true;
        }
        if (c.equals("o") && f.equals("o") && i.equals("o")) {
            toast.maketext(mainactivity.this, "winner player o!", toast.length_long).show();
            end = true;
        }
        if (d.equals("o") && e.equals("o") && f.equals("o")) {
            toast.maketext(mainactivity.this, "winner player o!", toast.length_long).show();
            end = true;
        }
        if (g.equals("o") && h.equals("o") && i.equals("o")) {
            toast.maketext(mainactivity.this, "winner player o!", toast.length_long).show();
            end = true;
        }
        if (g.equals("o") && e.equals("o") && c.equals("o")) {
            toast.maketext(mainactivity.this, "winner player x!", toast.length_long).show();
            end = true;
        }
 
        if (end) {
            b1.setenabled(false);
            b2.setenabled(false);
            b3.setenabled(false);
            b4.setenabled(false);
            b5.setenabled(false);
            b6.setenabled(false);
            b7.setenabled(false);
            b8.setenabled(false);
            b9.setenabled(false);
            playagainbutton.setvisibility(view.visible);
        }
 
        if (draw == 9 && !end) {
            toast.maketext(mainactivity.this, "draw game!", toast.length_long).show();
            playagainbutton.setvisibility(view.visible);
        }
    }
 
 
}

activity_main.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="wrap_content"
    android:orientation="vertical"
    android:paddingleft="@dimen/activity_horizontal_margin"
    android:paddingtop="@dimen/activity_horizontal_margin"
    android:paddingright="@dimen/activity_horizontal_margin"
    android:paddingbottom="@dimen/activity_vertical_margin"
    android:weightsum="3"
    tools:context="com.boriskonan.tictactoe.mainactivity">
 
 
    <linearlayout
        android:layout_width="match_parent"
        android:layout_height="120dp"
        android:weightsum="3">
 
        <button
            android:id="@+id/b1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
 
        <button
            android:id="@+id/b2"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
 
        <button
            android:id="@+id/b3"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
    </linearlayout>
 
    <linearlayout
        android:layout_width="match_parent"
        android:layout_height="120dp"
        android:weightsum="3">
 
        <button
            android:id="@+id/b4"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
 
        <button
            android:id="@+id/b5"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
 
        <button
            android:id="@+id/b6"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
 
    </linearlayout>
 
    <linearlayout
        android:layout_width="match_parent"
        android:layout_height="120dp"
        android:weightsum="3">
 
        <button
            android:id="@+id/b7"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
 
        <button
            android:id="@+id/b8"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
 
        <button
            android:id="@+id/b9"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_weight="1"
            android:textsize="50dp" />
    </linearlayout>
 
    <button
        android:id="@+id/playagainbutton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onclick="playagain"
        android:text="play again"
        android:visibility="invisible"
        tools:ignore="onclick" />
 </linearlayout>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。

看完文章,还可以扫描下面的二维码下载快手极速版领4元红包

快手极速版二维码

快手极速版新人见面礼

除了扫码领红包之外,大家还可以在快手极速版做签到,看视频,做任务,参与抽奖,邀请好友赚钱)。

邀请两个好友奖最高196元,如下图所示:

快手极速版邀请好友奖励

扫描二维码推送至手机访问。

版权声明:本文由34楼发布,如需转载请注明出处。

本文链接:https://www.34l.com/post/5246.html

分享给朋友:

相关文章

分享100句关于励志的经典语录

分享100句关于励志的经典语录

1、困难像弹簧,你弱它就强,你强它就弱。…

25句励志短句霸气,超励志的语录

25句励志短句霸气,超励志的语录

一、在人生的道路上,从来没有全身而退,坐享其成,不劳而获一说。你不努力,就得出局。…

分享30句用被刺造句的句子

分享30句用被刺造句的句子

1、黄昏已经谢去,夜幕早已铺开。高高的法国梧桐,被刺眼的白色路灯照亮。在黑色的夜空里镶了一圈又一圈攫绿,有时被拂过的夜风飘动,发出轻轻的沙沙声,只那么一阵,就消失在无限的宁静之中。…

带货直播运营怎么做(直播公司盈利模式)

带货直播运营怎么做(直播公司盈利模式)

直播网红千千万,谁能争当NO.1?随着直播崛起,越来越多的人想要入场分一杯羹,BUT,80%的人都不懂直播运营的内容法则。那么,新手主播怎么玩才能快速脱颖而出呢?掌握这四大直播运营的内容规则,人气轻松翻倍!1. 直播内容多样化…

融资丨「奕斯伟计算」完成25亿元C轮融资,目标物联网芯片领域全球领导者

融资丨「奕斯伟计算」完成25亿元C轮融资,目标物联网芯片领域全球领导者

创业邦获悉,12月1日,AIoT芯片与解决方案提供商北京奕斯伟计算技术有限公司(以下简称:奕斯伟计算)宣布完成25亿元人民币C轮融资,由金石投资和中国互联网投资基金联合领投,尚颀投资、国开科创、华新投资等跟投,老股东 IDG、君联资本、刘益…

火了12年,“假洋鬼子”终于翻车了

火了12年,“假洋鬼子”终于翻车了

图源:摄图网 编者按:本文来自微信公众号格隆汇财经热点(ID:glh_finance),作者:万连山,创业邦经授权转载 你肯定看到过这样一幅广告:一个与乔布斯颇有几分相似的神秘洋老头,戴着金丝眼镜,有时叼着烟斗,有时没有,出现在各大高铁站和…