android开发--推箱子小游戏(一)

一、前言

首先,非常抱歉过了这么多天才发第二篇的技术文章,由于个人原因吧。
好了,话不多说。看完上一篇前序的原理介绍后,想必大家对推箱子的开发原理也有了一定的了解了。
接下来,我们先实现第一步:把三个界面创建出来,并且联系起来。

二、实现代码

1、MainActivity(主界面)

a、新建工程项目
b、在主界面的布局文件中创建三个按钮(开始游戏、关于游戏、退出游戏)



c、主界面业务代码如下(注释非常详细):

public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}//    开始游戏按钮监听方法
//   点击后跳转选择游戏关卡界面public void startGame(View view) {/** 使用Intent(意图)跳转* 参数1:上下文环境* 参数2:跳转后的界面* */Intent intent_start = new Intent(this, ChoiceActivity.class);
//        启动跳转(一定要记得启动)startActivity(intent_start);}//    关于游戏按钮监听方法,点击后弹出Toastpublic void aboutGame(View view) {Toast.makeText(this, "推箱子小游戏-----By:SuperWork", Toast.LENGTH_SHORT).show();}//    退出游戏按钮监听方法public void exitGame(View view) {System.exit(0);}
}

2、ChoiceGameActivity(关卡选择界面)

a、新建一个空的Activity(注意:不是新建 java.class)
b、布局文件如下:
说明:
目前是采用新建一个Button来选择不同关卡,只是为了方便目前实现界面的跳转,后期将会把Button改用ListView实现选择功能。
(方便后期游戏的you xiang fa)。




c、业务代码:

/*
* 选择关卡界面
*实现View.OnClickListener接口进行整个界面的监听
* */
public class ChoiceActivity extends AppCompatActivity implements View.OnClickListener {//    声明控件(个人认为可理解为一个变量,Button类型)Button btn_Map1, btn_Map2;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_choice);
//        绑定控件btn_Map1 = findViewById(R.id.btn_Map1);btn_Map2 = findViewById(R.id.btn_Map2);
//        设置监听btn_Map1.setOnClickListener(this);btn_Map2.setOnClickListener(this);}@Overridepublic void onClick(View v) {Intent intent_goGame = new Intent(this,GameActivity.class);
//        使用switch语句判断点击的是哪个按钮,非常的方便switch (v.getId()){case R.id.btn_Map1:/*带参数跳转* 参数1:参数名(相当于Key)* 参数2:需要传送的数据* */intent_goGame.putExtra("map", "第一关");startActivity(intent_goGame);break;case R.id.btn_Map2:intent_goGame.putExtra("map", "第二关");startActivity(intent_goGame);break;default:break;}}
}

3、GameActivity(游戏界面)

a、再次新建一个空的Activity
b、布局文件代码(先不放其他东西,后面的步骤再实现画地图)




c、业务代码

public class GameActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_game);getMapKey();}/** 接收ChoiceActivity传送过来的数据* */public void getMapKey(){String mapKey = getIntent().getStringExtra("map");Toast.makeText(this, ""+mapKey, Toast.LENGTH_SHORT).show();}
}

三、最终效果

在这里插入图片描述

四、总结

本章的内容很少也很简单,基本就是画一个布局然后加少量的业务代码。
这里面我个人觉得需要掌握的就是Intent(意图)的使用:跳转、带参跳转以及接收Intent传输过来的数据。
下一篇文章涉及的知识点以及难度、代码量会更多一点。主要是将选择关卡界面的ListView给实现了以及将第一关的先画出来作为初始地图。
有什么疑问或者建议的,可以评论区见(只求勿喷,谢谢)


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部