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

Android Studio实现井字游戏

34资源网2022-01-12646

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

分享给朋友:

相关文章

微信公众号阅读量暴跌,是凉了吗?还是另有乾坤

微信公众号阅读量暴跌,是凉了吗?还是另有乾坤

这两年,不少媒体同行/KOL都陆续唱衰公众号,说公众号凉凉了,没人看了。用「已死」「危机」「没有未来」形容,而短视频才是最火爆的。这种情况在订阅号改版成信息流推荐后,情况更盛。…

女装加盟哪个品牌可靠?艾丽哲这个牌子不错哦

女装加盟哪个品牌可靠?艾丽哲这个牌子不错哦

女装行业一直发展都不错,女装加盟哪个品牌可靠?在众多的女装品牌当中,艾丽哲女装凭借优良的口碑和超高的人气,在行业当中占有一定的优势,是好的,当中非常可靠的品牌,在激烈的市场当中,凭借超高的实力,得到了无数加盟商的认可,赚钱轻松,发展潜力大,…

工具人是什么意思,工具人是什么梗?

工具人是什么意思,工具人是什么梗?

最近网络上面出现比较多的一个词语就是“工具人”,那么,什么样的人会将他形容成是工具呢?这个是让网友们觉得比较的好奇的,主要是指的什么?在微博上面经常看到有网络语工具人这样的表达,所以引起了很多网友的关注,想要了解这个词语,那么工具人是什么意…

hcie面试通过率是多少(华为hcip认证费用和报名资格)

华为hcie面试通过率是多少? 华为官方公开披露的数据为30%,也就是说十个人中仅有三个可以通过,成为华为专家级网络工程师。从59学习网站长所接触考生的实际情况来看,通过率至少也是五五开,大于50%,因此不必过于担心。 HCIE面试考点涵盖…

ic卡与id卡区别(卡片类型和原理的区别)

ic卡与id卡区别(卡片类型和原理的区别)

IC卡全称为集成电路卡,也称智能卡,特点是可读写,可加密,安全性高、容量大,可存储数据,常用于一卡通系统;ID卡全称为身份识别卡,这只是一种感应卡,这种卡只可读不可写,有固定的编号,常用于门禁和考勤系统。 IC卡可以说是ID卡的一种升级形…