Android拼图游戏开发全纪录1

2023-05-16

本文转自:http://blog.csdn.net/eclipsexys/article/details/18887567

今天我们继续来讲解Android拼图游戏全纪录的第二篇,今天要完成的任务比较简单:界面布局和资源文件


1资源文件:

我们在开发一个项目的时候,首先要定下这个App的基调,是小清新呢还是重口味,所以我们需要定义一些颜色、style等

首先是颜色等:

[html] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <resources>  
  3.     <color name="app_bg">#000000</color>  
  4.       
  5.     <color name="title_text">#FFFFFF</color>  
  6.       
  7.     <color name="record_title_bg">#F56A47</color>  
  8.     <color name="record_title_text">#FFFFFF</color>  
  9.     <color name="record_title_text_dark">#727272</color>  
  10.       
  11.     <color name="main_bg">#3EC5FF</color>  
  12.     <color name="main_text">#FFFFFF</color>  
  13.       
  14.     <color name="setting_reg_bg">#A2A2A2</color>  
  15.     <color name="setting_text_light">#C3C3C3</color>  
  16.     <color name="setting_text_dark">#111111</color>  
  17.       
  18.     <color name="tv_click">#33444444</color>  
  19. </resources>  

以上就定义好了我们这个App的小清新的风格

然后是字符串资源,这个随意吧

[html] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <resources>  
  3.   
  4.     <string name="app_name">XPuzzle</string>  
  5.     <string name="action_settings">Settings</string>  
  6.     <string name="hello_world">Hello world!</string>  
  7.     <string name="puzzle_main_type">选择难度:</string>  
  8.     <string name="puzzle_main_steps">步数:</string>  
  9.     <string name="puzzle_main_img">原        图</string>  
  10.     <string name="puzzle_main_reset">重        置</string>  
  11.     <string name="puzzle_main_back">返        回</string>  
  12.     <string name="puzzle_main_time">时间:</string>  
  13.     <string name="puzzle_main_type_selected">2 X 2</string>  
  14.     <string name="puzzle_main_record">查看记录</string>  
  15.     <string name="puzzle_main_more">了解更多</string>  
  16.   
  17. </resources>  

接下来是自定义的一个带Selector的Shape,这样Button使用这个背景后,就比较配合小清新的风格了
[html] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <selector xmlns:android="http://schemas.android.com/apk/res/android">  
  3.   
  4.     <item android:state_pressed="true"><shape android:shape="rectangle">  
  5.   
  6.             <!-- 填充的颜色 -->  
  7.             <solid android:color="#33444444" />  
  8.             <!-- 设置按钮的四个角为弧形 -->  
  9.             <!-- android:radius 弧形的半径 -->  
  10.             <corners android:radius="5dip" />  
  11.   
  12.             <!-- padding:Button里面的文字与Button边界的间隔 -->  
  13.             <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />  
  14.         </shape></item>  
  15.     <item><shape android:shape="rectangle">  
  16.   
  17.             <!-- 填充的颜色 -->  
  18.             <solid android:color="@color/title_text" />  
  19.             <!-- 设置按钮的四个角为弧形 -->  
  20.             <!-- android:radius 弧形的半径 -->  
  21.             <corners android:radius="5dip" />  
  22.   
  23.             <!-- padding:Button里面的文字与Button边界的间隔 -->  
  24.             <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />  
  25.         </shape></item>  
  26.   
  27. </selector>  

这个就是我们在前面图中看见的Button了,是不是很好看啊

嗯 还有个TextView的selector

[html] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <selector xmlns:android="http://schemas.android.com/apk/res/android">  
  3.   
  4.     <item android:drawable="@color/tv_click" android:state_pressed="true"></item>  
  5.     <item android:drawable="@android:color/transparent"></item>  
  6.   
  7. </selector>  

下面我们就要开始实现我们的界面了:

首先是首页界面:


布局比较简单,相信大家都看得懂

[html] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="match_parent"  
  4.     android:layout_height="match_parent"  
  5.     android:background="@color/main_bg" >  
  6.   
  7.     <LinearLayout  
  8.         android:id="@+id/ll_puzzle_main_spinner"  
  9.         android:layout_width="wrap_content"  
  10.         android:layout_height="wrap_content"  
  11.         android:layout_centerHorizontal="true"  
  12.         android:layout_margin="10dip" >  
  13.   
  14.         <TextView  
  15.             android:layout_width="wrap_content"  
  16.             android:layout_height="wrap_content"  
  17.             android:layout_gravity="center"  
  18.             android:text="@string/puzzle_main_type"  
  19.             android:textColor="@color/main_text"  
  20.             android:textSize="@dimen/text_title" />  
  21.   
  22.         <TextView  
  23.             android:id="@+id/tv_puzzle_main_type_selected"  
  24.             android:layout_width="wrap_content"  
  25.             android:layout_height="wrap_content"  
  26.             android:layout_gravity="center"  
  27.             android:background="@drawable/textview_click"  
  28.             android:text="@string/puzzle_main_type_selected"  
  29.             android:textColor="@color/main_text"  
  30.             android:textSize="@dimen/text_title" />  
  31.     </LinearLayout>  
  32.   
  33.     <LinearLayout  
  34.         android:id="@+id/ll_xpuzzle_main_functions"  
  35.         android:layout_width="wrap_content"  
  36.         android:layout_height="wrap_content"  
  37.         android:layout_alignLeft="@+id/gv_xpuzzle_main_pic_list"  
  38.         android:layout_alignParentBottom="true"  
  39.         android:gravity="center"  
  40.         android:layout_alignRight="@+id/gv_xpuzzle_main_pic_list"  
  41.         android:layout_margin="@dimen/padding" >  
  42.   
  43.         <Button  
  44.             android:id="@+id/btn_puzzle_main_record"  
  45.             style="@style/btn_style"  
  46.             android:layout_width="wrap_content"  
  47.             android:layout_height="wrap_content"  
  48.             android:layout_margin="@dimen/padding"  
  49.             android:background="@drawable/white_button"  
  50.             android:text="@string/puzzle_main_record" />  
  51.   
  52.         <Button  
  53.             android:id="@+id/btn_puzzle_main_setting"  
  54.             style="@style/btn_style"  
  55.             android:layout_width="wrap_content"  
  56.             android:layout_height="wrap_content"  
  57.             android:layout_margin="@dimen/padding"  
  58.             android:background="@drawable/white_button"  
  59.             android:text="@string/puzzle_main_more" />  
  60.     </LinearLayout>  
  61.   
  62.     <GridView  
  63.         android:id="@+id/gv_xpuzzle_main_pic_list"  
  64.         android:layout_width="wrap_content"  
  65.         android:layout_height="wrap_content"  
  66.         android:layout_above="@id/ll_xpuzzle_main_functions"  
  67.         android:layout_below="@id/ll_puzzle_main_spinner"  
  68.         android:layout_centerHorizontal="true"  
  69.         android:layout_margin="@dimen/padding"  
  70.         android:gravity="center_horizontal"  
  71.         android:horizontalSpacing="@dimen/padding"  
  72.         android:numColumns="4"  
  73.         android:padding="@dimen/padding"  
  74.         android:verticalSpacing="@dimen/padding" >  
  75.     </GridView>  
  76.   
  77. </RelativeLayout>  

这就OK了。

里面的选择难度是一个popupwindow,所以还有个布局文件

这个。。so easy了

[html] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:layout_width="wrap_content"  
  4.     android:layout_height="wrap_content"  
  5.     android:background="@android:color/transparent"  
  6.     android:orientation="horizontal" >  
  7.   
  8.     <TextView  
  9.         android:id="@+id/tv_main_type_2"  
  10.         android:layout_width="wrap_content"  
  11.         android:layout_height="wrap_content"  
  12.         android:layout_marginRight="8dp"  
  13.         android:text="2x2"  
  14.         android:textColor="@color/main_text"  
  15.         android:textSize="@dimen/text_title_sub" />  
  16.   
  17.     <TextView  
  18.         android:id="@+id/tv_main_type_3"  
  19.         android:layout_width="wrap_content"  
  20.         android:layout_height="wrap_content"  
  21.         android:layout_marginRight="8dp"  
  22.         android:text="3x3"  
  23.         android:textColor="@color/main_text"  
  24.         android:textSize="@dimen/text_title_sub" />  
  25.   
  26.     <TextView  
  27.         android:id="@+id/tv_main_type_4"  
  28.         android:layout_width="wrap_content"  
  29.         android:layout_height="wrap_content"  
  30.         android:text="4x4"  
  31.         android:textColor="@color/main_text"  
  32.         android:textSize="@dimen/text_title_sub" />  
  33.   
  34. </LinearLayout>  

最后是拼图的布局界面:如下图


就是这样啦,其实界面也很简单

[html] view plain copy 在CODE上查看代码片 派生到我的代码片
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:id="@+id/rl_puzzle_main_main_layout"  
  4.     android:layout_width="match_parent"  
  5.     android:layout_height="match_parent"  
  6.     android:background="@color/main_bg" >  
  7.   
  8.     <LinearLayout  
  9.         android:id="@+id/ll_puzzle_main_spinner"  
  10.         android:layout_width="match_parent"  
  11.         android:layout_height="wrap_content"  
  12.         android:layout_margin="@dimen/padding"  
  13.         android:gravity="center_horizontal" >  
  14.   
  15.         <TextView  
  16.             android:layout_width="wrap_content"  
  17.             android:layout_height="wrap_content"  
  18.             android:layout_gravity="center"  
  19.             android:text="@string/puzzle_main_steps"  
  20.             android:textColor="@color/title_text"  
  21.             android:textSize="@dimen/text_title" />  
  22.   
  23.         <TextView  
  24.             android:id="@+id/tv_puzzle_main_counts"  
  25.             android:layout_width="wrap_content"  
  26.             android:layout_height="wrap_content"  
  27.             android:layout_gravity="center"  
  28.             android:gravity="center"  
  29.             android:paddingRight="50dip"  
  30.             android:text="1"  
  31.             android:textColor="@color/title_text"  
  32.             android:textSize="@dimen/text_title" />  
  33.   
  34.         <TextView  
  35.             android:layout_width="wrap_content"  
  36.             android:layout_height="wrap_content"  
  37.             android:layout_gravity="center"  
  38.             android:text="@string/puzzle_main_time"  
  39.             android:textColor="@color/title_text"  
  40.             android:textSize="@dimen/text_title" />  
  41.   
  42.         <TextView  
  43.             android:id="@+id/tv_puzzle_main_time"  
  44.             android:layout_width="wrap_content"  
  45.             android:layout_height="wrap_content"  
  46.             android:layout_gravity="center"  
  47.             android:gravity="center"  
  48.             android:text="1"  
  49.             android:textColor="@color/title_text"  
  50.             android:textSize="@dimen/text_title" />  
  51.     </LinearLayout>  
  52.   
  53.     <LinearLayout  
  54.         android:id="@+id/ll_puzzle_main_btns"  
  55.         android:layout_width="wrap_content"  
  56.         android:layout_height="wrap_content"  
  57.         android:layout_alignParentBottom="true"  
  58.         android:layout_centerHorizontal="true"  
  59.         android:layout_margin="@dimen/padding" >  
  60.   
  61.         <Button  
  62.             android:id="@+id/btn_puzzle_main_img"  
  63.             style="@style/btn_style"  
  64.             android:layout_width="wrap_content"  
  65.             android:layout_height="wrap_content"  
  66.             android:layout_margin="@dimen/padding"  
  67.             android:background="@drawable/white_button"  
  68.             android:text="@string/puzzle_main_img" />  
  69.   
  70.         <Button  
  71.             android:id="@+id/btn_puzzle_main_restart"  
  72.             style="@style/btn_style"  
  73.             android:layout_width="wrap_content"  
  74.             android:layout_height="wrap_content"  
  75.             android:layout_margin="@dimen/padding"  
  76.             android:background="@drawable/white_button"  
  77.             android:text="@string/puzzle_main_reset" />  
  78.   
  79.         <Button  
  80.             android:id="@+id/btn_puzzle_main_back"  
  81.             style="@style/btn_style"  
  82.             android:layout_width="wrap_content"  
  83.             android:layout_height="wrap_content"  
  84.             android:layout_margin="@dimen/padding"  
  85.             android:background="@drawable/white_button"  
  86.             android:text="@string/puzzle_main_back" />  
  87.     </LinearLayout>  
  88.   
  89.     <GridView  
  90.         android:id="@+id/gv_puzzle_main_detail"  
  91.         android:layout_width="wrap_content"  
  92.         android:layout_height="wrap_content"  
  93.         android:layout_above="@id/ll_puzzle_main_btns"  
  94.         android:layout_below="@id/ll_puzzle_main_spinner"  
  95.         android:layout_centerInParent="true"  
  96.         android:layout_margin="@dimen/padding" >  
  97.     </GridView>  
  98.   
  99. </RelativeLayout>  

好了,今天的东西都是些准备工作,所以比较简单。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android拼图游戏开发全纪录1 的相关文章

  • 如何为 Android 创建我们自己的 PDF 查看器?

    我想构建一个可在我的 Android 应用程序中使用的 PDF 阅读器 查看器 但我无法使用 Google 文档来阅读我的内容 我无法使用我的设备中已安装的任何 PDF 阅读器 它应该位于我的应用程序内 并且不会通过互联网公开我的安全内容
  • 如何自定义 Firebase 身份验证 ui

    我正在使用 Firebase Auth Ui 进行号码验证 我有一些要求 需要更改国家旋转器下拉项目的文本和背景颜色 我正在使用下面的样式 但它不会改变下拉菜单的背景颜色或项目的文本颜色 style name FirebaseUI Coun
  • 如何使全屏覆盖在方向更改后保持全屏?

    我正在制作一个应用程序 它可以创建在屏幕上行走的微小精灵动画 我有一个主要活动 带有 启动服务 按钮 这会启动一个服务 该服务 在onCreate 创建一个全屏视图并将其附加到根窗口管理器 这部分工作完美 它充满了屏幕 您可以离开应用程序
  • animation.start() 或animation.startNow() 不会立即开始动画

    我有一个奇怪的问题 有时应该淡出我的控件 ImageButton 的动画不会立即启动 我使用淡出动画来隐藏它 然后在 myListener 的末尾 onAnimationEnd 中 我将新资源作为按钮上的图像 我的应用程序代码中的某处 An
  • 如何使用onDraw(Canvas)获取WebView的位图快照(Android)

    我曾经使用 capturePicture 方法来制作 WebView 的快照 此方法在 API 级别 19 中已弃用 该文档说 使用 onDraw Canvas 获取 WebView 的位图快照 但我真的不知道它是什么意思 你能教我如何解决
  • 通过模拟器控制台或 ADB 更改 Android 模拟器方向

    我正在尝试构建一个自动化测试框架 用于检查应用程序应该响应的基本内容 而不会崩溃 其中之一是检查应用程序是否正确响应配置更改 现在 由于它是自动化的 我必须以编程方式在横向和纵向之间切换模拟器的方向 并观察它是否崩溃 大写 因为有很多与 c
  • 使用全局变量从内部函数获取空字符串

    请帮助我解决一些小问题 我确信你能做到 D 我试图在 firestore 文档 user cases information 上设置一个字段 其中包含一个字段 case number 首先我声明这个全局变量 private String c
  • 改造将多个图像上传到单个密钥

    我正在使用 Retrofit 将图像上传到我的服务器 这里我需要为一个密钥上传多个图像 我已经尝试使用 Postman 网络客户端 它运行良好 这是一个屏幕截图 以下是请求的键值对 调查图像 文件1 文件2 文件3 属性图像 文件DRA j
  • Android - 在图像/缩略图上覆盖播放按钮的最佳方式

    我有一个 Android 应用程序 可以播放音频 视频并显示图片 对于视频 我想在预览图像顶部以及列表视图中叠加一个播放按钮 现在我的做法是使用 xml 中的 ImageView 然后可绘制对象是一个图层图层列表 我以编程方式定义它 因为其
  • 如何在移动应用程序上连接到服务器?

    我是移动应用程序的新手 我基本上来自网络开发平台 我只是在玩 App Framework LungoJS Jquery Mobile kendo 等移动框架 以获得该垂直领域的一些知识 我正在开发的应用程序仍然处于 UI 级别 我所需要的只
  • Android 导航组件 - 从“任何地方”/基本片段导航?

    我正在开发一个应用程序 它有一个奇怪的花招 可以在设备旋转时打开特定的片段 在实现 android 的导航组件之前 所需要的只是对当前活动的引用 并且可以在特定时刻向用户显示的任何内容之上执行手动片段事务 但是在转移到导航组件之后 我发现很
  • 线性布局高度和重量

    我有以下内容
  • Android 中的 ODEX 文件是什么?

    经过一些android安装了应用程序 我发现它会变成odex文件 不是apk 在智 能手机中 这是怎么发生的 谁能教教我 我对此很感兴趣 博客文章 https stackoverflow com a 9593590 194894大部分是正确
  • 使用bindService启动IntentService时是否应该调用onHandleIntent?

    我的服务延伸IntentService当它开始时startService onHandleIntent被叫 但是 当服务启动时bindService 我确实需要绑定 onHandleIntent没有被调用 Should onHandleIn
  • Recyclerview项目点击涟漪效果[重复]

    这个问题在这里已经有答案了 我正在尝试添加Ripple影响到RecyclerView的项目 我在网上查了一下 但找不到我需要的东西 我努力了android background归因于RecyclerView本身并将其设置为 android
  • 我想要有条件的登录导航,没有 MAIN 片段或按钮

    我正在使用 Android Jetpack 导航组件 实时数据和 Firebase 我希望工作流程就像用户打开应用程序时一样 然后根据登录 注销状态导航到登录 配置文件片段 而不需要任何主片段或按钮 请 我的应用程序中没有主要片段 用户启动
  • 永久删除Android文件

    我发现了一个名为这会从 Android 设备中永久删除文件和文件夹 以便删除的文件无法再恢复 这是我正在谈论的应用程序 但我想知道如何做到这一点 我知道它是用 android studio 制作的 i尝试了常规的删除方式file delet
  • PhoneGap Build Android 不显示闪屏

    这是我的 config xml 中与启动屏幕相关的代码
  • 连接到具有相同 SSID 的最强接入点(信号最强的接入点)

    我正在编写一个程序来始终连接到最强的接入点 我的意思是信号最强的接入点 首先 我扫描所有可用的 WiFi 网络 然后限制它们仅查看具有相同 SSID 的网络 这样我就可以看到一个网络的所有AP 当我连接到该网络时 它没有连接到最强的信号 但
  • 如何使用socket.io发送图像文件(二进制数据)?

    我无法从以下位置发送数据Android Client to NodeJS Server I use Socket IO 客户端 https github com socketio socket io client java我的客户端中的ja

随机推荐

  • android rc文件的启动

    记录hostapd 启动方式 xff0c 多种方式可以启动一个bin hostapd android rc init rc fragment for hostapd on Android Copyright c 2002 2016 Joun
  • MTK WLAN支持多种NVRAM方案

    背景 硬件差异的前提 wifi功率会有差异 软件上可以做功率补偿方案 但是需要知道整机状态 然后设定一个flag 软件根据flag 选择使用预制的多NVRAM 简单点来说就是 根据不同条件 加载不同的NVRAM 实现原理 1 根据不同的射频
  • C51矩阵键盘

    对于键盘按键之前也是似懂非懂 xff0c 手里有一块浩豚电子的51板子 xff0c 现在跟着使用说明看一遍学习 矩阵键盘 xff0c 称为行列键盘 xff0c 在单片机上使用4条I O口作为行线 xff0c 4条I O口作为列线 xff0c
  • Ubuntu 获取 root 权限 (临时&永久)

    xfeff xfeff xfeff xfeff Ubuntu 获取 root 权限 操作环境 xff1a Win7 43 VMware Workstation 12 0 1 43 Ubuntu 12 04 1 临时获取 root 权限 xf
  • 广播Boradcast socket sendto出错 errno: 101 Network is unreachable

    关键字 xff1a linux 广播 255 255 255 255 sendto error Network is unreachable 全网广播 场景 xff1a 今天调试linux 网络编程的广播 xff0c 当向255 255 2
  • ubuntu下查看某个包是否已安装

    dpkg l dpkg l grep package name dpkg status package name 查看 var lib dpkg status 内容
  • 查看一个可执行文件或者库的依赖库

    经常需要查看一个可执行文件或者库依赖那些库文件 通常情况下这很好办 xff0c 使用ldd命令就可以了 xff0c 比如 xff1a 1 2 3 4 5 6 ldd bin bash linux vdso so 1 61 gt 0x0000
  • 构建gcc交叉编译工具链

    如何构建一个GCC 交叉编译工具链 GCC不仅是一个编译器 xff0c 它是一个开源工程 xff0c 可以让你建立各种编译器 一些编译器支持多线程 xff0c 一些支持共享库 xff0c 一些支持 Multilib xff08 典型的应用是
  • buildroot VS yocto

    翻译自Buildroot vs OpenEmbedded or Yocto Project A Four Hands Discussion 2016 pdf Buildroot 和 yocto的对比 对比内容 xff1a xff08 1 x
  • git查看各个branch之间的关系图

    提供两种方法 xff1a 1 使用git log命令 git log graph decorate oneline simplify by decoration all 说明 xff1a decorate 标记会让git log显示每个co
  • CUDA入门(一)

    最近我也都在看CUDA xff0c 自己看书和练习也都搞了一个月了 而且经常在CSDN上逛 xff0c 也发现了很多问题 xff0c 所以决定自己写点这方面的东西 xff0c 方便自己也方便后来人 根据我的调查 xff0c 我发现现在的初学
  • Openwrt Package xxx is missing dependencies for the following libraries 问题分析

    Openwrt编译时通常会遇到如下问题 xff1a Openwrt Package xxx is missing dependencies for the following libraries libxxx so 首先检查package
  • shell command命令

    近期遇到一个比较少见的命令command xff0c 详细如下 xff1a command 是一些shell的内建命令 我本机使用的是dash xff0c 服务器使用的是bash xff0c 其他shell没有测试 dash user sp
  • 深入理解Linux内核-第五章笔记

    内核同步 内核同步 内核如何为不同的请求提供服务 内核抢占 同步原语 每CPU变量原子操作优化和内存屏障自旋锁顺序锁读 拷贝 更新RCU信号量完成量禁止本地中断 对内核数据结构的同步访问避免竞争条件的实例 内核如何为不同的请求提供服务 内核
  • 一些截图

  • 基于busybox的bootchart分析

    一 Bootchart简介 Bootchart官网http www bootchart org xff0c 已经很久没有更新了 Bootchart的目的是将启动阶段的性能可视化 xff08 Boot Process Performance
  • 用Android手机spydroid-ipcamera搭载局域网监控环境

    相比有很多人都想用手机实现视频监控吧 xff0c 今天这个教程 xff0c 将会教大家用spydroid ipcamera搭建局域网监控环境 准备工作 xff1a 1 准备一部带有摄像头的 xff0c API level在9以上的手机 xf
  • 3D数学--学习笔记(三):3D中绕任意轴的旋转

    本文转自 xff1a http blog csdn net zjc game coder article details 24269757 不要小看我们在Unity或者3DMAX中的一个简单的旋转物体操作 题记 这里需要用到的知识 xff1
  • Android拼图游戏开发全纪录0

    本文转自 xff1a http blog csdn net eclipsexys article details 18881849 最近刚完成一个Android的小项目 拼图游戏 项目并不复杂 xff0c 但也是一个完整的项目 xff0c
  • Android拼图游戏开发全纪录1

    本文转自 xff1a http blog csdn net eclipsexys article details 18887567 今天我们继续来讲解Android拼图游戏全纪录的第二篇 xff0c 今天要完成的任务比较简单 xff1a 界