当前位置:首页 > 谈天说地 > 正文内容

Android Studio实现井字游戏

34资源网2022年01月12日 12:08425

本文实例为大家分享了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>

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

看完文章,还可以用支付宝扫描下面的二维码领取一个支付宝红包,目前可领1-88元不等

支付宝红包二维码

除了扫码可以领取之外,大家还可以(复制 720087999 打开✔支付宝✔去搜索, h`o`n.g.包哪里来,动动手指就能领)。

看下图所示是好多参与这次活动领取红包的朋友:

支付宝红包

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

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

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

分享给朋友:

相关文章

用白面书生造句,看看这七句有哪句适合你?
用白面书生造句,看看这七句有哪句适合你?

1、他是个手无缚鸡之力的白面书生。2、别看他文绉绉的像个白面书生,一上足球场勇猛非凡,踢起球来可狠了。3、那个白面书生经不起严刑拷打,向敌人投降了。4、我一个白面书生,又手无寸铁,怎敢和那几个黑脸大汉较真呢!5、新时代的大学生不是白面书生,...

络绎不绝怎么造句?教你用络绎不绝造句
络绎不绝怎么造句?教你用络绎不绝造句

很多人不知道络绎不绝怎么造句?其实用络绎不绝造句有很多的,下面小编整理了29句用络绎不绝造句的句子,希望对大家有借鉴的作用。1) 月亮渐渐西落,我依依不舍地离开。但观灯的人还是络绎不绝,各种彩色的灯像天上的繁星一样,大放光彩。真是“一夜花灯...

打工人是什么梗出自哪里?打工人的梗为什么这么火?
打工人是什么梗出自哪里?打工人的梗为什么这么火?

近日,看到打工人这词很火,很多小伙伴肯定和我一样,都想知道“打工人”这个词为什么这么火吧?那么,接下来我就跟大家说说打工人是什么梗出自哪里?这词出自哪里无从考证,不过肯定是某些有头脑的网友发明的,至于出自哪位网友?我们一起来了解相关情况吧。...

失控玩家怎么样?好看吗?值不值得看?
失控玩家怎么样?好看吗?值不值得看?

每部电影出来都会有人说好看,有人说不好看。只是有些电影拍出来会更加符合大众口味,有些则只适合小部分人看。那么,最近热播的这部失控玩家怎么样?好看吗?值不值得看?今天小编就和大家说说这部适合大众口味的电影。不同于《头号玩家》那种通过彩蛋引爆观...

100句非常经典的人生励志语录分享
100句非常经典的人生励志语录分享

1、不要皱眉,即使在伤心的时刻,因为你从不知道有谁会醉心于你的笑容。2、失去只是一种姿势,得到并不等同于幸福。3、真理和美女都是赤裸裸的。4、我们看错了这个世界,却说世界欺骗了我们。5、我们人这一辈子不是别人的楷模,就是别人的借鉴。6、千万...

怎么用电脑开wifi热点(笔记本电脑连接wifi教程)

很多的时候我们手里不会随时准备着路由器,所以经常会导致手机等移动设备缺乏wifi使用。其实,一根网线、一台Win10笔记本就能轻松设置Wifi共享,并且借助Win10自带的移动Wifi热点就能轻松实现Wifi共享,提供给其他笔记本或手机、...