安卓拼图游戏制作(适合初学者)

制作的工具条件

android studio工具和ps
选择适合手机屏幕的图片
利用ps分成九等份,在制作一张空白图片
会安卓的点击事件处理
会Intent传值
会安卓基础的控件和布局

创建项目之后
第一件事就是写布局

第一个布局

选择图片的布局,称呼为选择图片的布局

布局如图
写两个按钮用来切换图片,点击中间按钮开始游戏
并给id;
我是用图片代替按钮。

第二个布局

就是拼图游戏的布局;
在这里插入图片描述
用LinearLayout标签中的 android:layout_weight属性把九个图片控件平分屏幕。
并给id;

选择图片的Activity

很简单,一共有三个按钮,就写三个点击事件;
在定义一个 int tu_ID的变量,用来代表选中的是哪张图片;
首先是开始游戏的点击事件
s
利用Intent传值给拼图的Activity

其次是上一张的点击事件
在这里插入图片描述
点击后,tu_ID加一,并相应的改变背景图;

最后是下一张的点击事件
跟上一张差不多

拼图的Activity

第一件事就是拿到传过来的值,判断是哪张图片
然后创建一个长度为九的int数组,分别拿到8张图片的资源值
,第九张填空白图片的资源值。

打乱图片,图片不能直接随机打乱,否则会出现拼不了的现象;
我写了一个打乱方法

 public int[] sjsss(int[] ai){

            int weizhi=8;//表示白板的位置
            int tihuan=0;
            for (int i = 0; i < 50; i++) {//这个50次,你觉得少可以加
                int sj1=(int)(Math.random()*4+1);
                if (sj1==1) {
                    int pd=weizhi;
                    if (weizhi==2||weizhi==1||weizhi==0) {
                        pd=weizhi;
                    }else {
                        pd=weizhi-3;
                    }

                    tihuan=ai[weizhi];
                    ai[weizhi]=ai[pd];
                    ai[pd]=tihuan;
                    weizhi=pd;
                }else if (sj1==2) {
                    int pd=weizhi;
                    if (weizhi==6||weizhi==7||weizhi==8) {
                        pd=weizhi;
                    }else {
                        pd=weizhi+3;
                    }

                    tihuan=ai[weizhi];
                    ai[weizhi]=ai[pd];
                    ai[pd]=tihuan;
                    weizhi=pd;
                }else if (sj1==3) {
                    int pd=weizhi;
                    if (weizhi==0||weizhi==3||weizhi==6) {
                        pd=weizhi;
                    }else {
                        pd=weizhi-1;
                    }

                    tihuan=ai[weizhi];
                    ai[weizhi]=ai[pd];
                    ai[pd]=tihuan;
                    weizhi=pd;
                }else if (sj1==4) {
                    int pd=weizhi;
                    if (weizhi==2||weizhi==5||weizhi==8) {
                        pd=weizhi;
                    }else {
                        pd=weizhi+1;
                    }

                    tihuan=ai[weizhi];
                    ai[weizhi]=ai[pd];
                    ai[pd]=tihuan;
                    weizhi=pd;
                }

            }
            return ai;
        }

打乱后,在把数组的资源分别填充到九个控件中
这里封装一个方法

    public void runX(){
        pt1.setImageDrawable(getResources().getDrawable(x[0]));
        pt2.setImageDrawable(getResources().getDrawable(x[1]));
        pt3.setImageDrawable(getResources().getDrawable(x[2]));
        pt4.setImageDrawable(getResources().getDrawable(x[3]));
        pt5.setImageDrawable(getResources().getDrawable(x[4]));
        pt6.setImageDrawable(getResources().getDrawable(x[5]));
        pt7.setImageDrawable(getResources().getDrawable(x[6]));
        pt8.setImageDrawable(getResources().getDrawable(x[7]));
        pt9.setImageDrawable(getResources().getDrawable(x[8]));
    }


然后就在写九个控件的点击事件
看着多,其实简单写,
首先拿到白板的位置,
在每个点击事件里判断是否靠近白板
如果是,则交换数组的值,
然后在执行runX()
然后在写一个判断是否拼图完成的方法;
就是判断数组的每个值是否等于原先的值;
如果正确就可以弹出提示框或者什么;

最后

可以打包给同学朋友玩玩
也可以加个计时器进去。
有什么不懂的欢迎留言;

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: 对于初学者而言,建议选择西门子S7-1200或S7-200系列PLC。这两款PLC操作简单,对于初学者来说易于上手。同时,这两款PLC在市场上价格相对较为实惠,能够满足初学者的需求。 S7-1200系列PLC是西门子推出的一种高性价比的模块化控制器,上市之后立即成为市场的明星。该PLC的控制功能强大,同时外观小巧,方便安装,且具有多种通讯接口,方便用户与机器之间的互联互通。 S7-200系列PLC是西门子推出的一种低成本、高性能的可编程逻辑控制器,具有强大的控制能力和稳定的性能。它的控制程序简单易懂,非常适合初学者学习使用。除此之外,该PLC支持多种通讯协议,与其他设备的集成可以轻松实现。 总而言之,建议初学者选择西门子S7-1200或S7-200系列PLC,这两款PLC具有易用性、实用性和性价比的特点,能够帮助初学者快速上手并掌握PLC控制知识。 ### 回答2: 对于初学者来说,选购适合自己学习的西门子PLC非常重要。在市场上,有许多不同种类的PLC,而西门子PLC由于其稳定性、易学性和广泛应用性而备受青睐。如果初学者要选择适合自己的西门子PLC,以下几点建议可供参考。 首先,初学者应该选择西门子PLC的入门级产品,如西门子S7-200或S7-1200系列。这些PLC具有简单易用的编程界面,适合初学者使用,并且可扩展性强,满足初学者学习需求。 其次,初学者应该选择支持图形化编程的软件,如西门子TIA Portal。这种软件使用方便,操作简单,可以让初学者很快上手。 第三,初学者应该选择带有教学资料和案例的套装。这些资料和案例可以帮助初学者更好地学习西门子PLC,并且能够帮助他们快速掌握PLC的编程技巧。 第四,初学者应该选择带有模拟输入输出接口的PLC。这种PLC可以让初学者在不接触实际设备的情况下,模拟控制设备的运行,从而更好地理解PLC的原理和应用。 总之,初学者应该从产品型号、软件、教程和功能等方面考虑,选择适合自己的西门子PLC。在学习过程中,应该不断思考和实践,加深对PLC的理解,才能更好地掌握PLC的技术。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值