zoukankan      html  css  js  c++  java
  • 《2048》开发1——游戏介绍和布局

    之前研究了极客学院的2048源码,深受启发,于是也自己动手做了一个简单的2048app,仅供学习与交流。

    首先先介绍一下2048的玩法:

    有4*4列的方块,每一个方块代表一个数值。游戏初始化的时候只有两个方块有值,上面的值有可能是2和2,或者是2和4,这种概论大致是1:9.

    在游戏操作界面当中滑动时,比如说向左滑动,当相邻两个卡片数值相同时两个卡片合并,数值相加;当卡片的左侧没有值时,移动到靠最左侧一方。每移动一次,在空白的卡片上随机出现一个数值2.当卡片已经填满整个4*4列方块,且没有相邻的值相等的情况下,游戏结束。


    游戏的主要布局如图所示,分为当前分数,最高分,游戏的操作界面,重新开始游戏的按钮。

    <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
       xmlns:tools="http://schemas.android.com/tools"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
     
       android:paddingLeft="@dimen/activity_horizontal_margin"
       android:paddingRight="@dimen/activity_horizontal_margin"
     
       tools:context="com.Lemon.game2048.MainActivity"
       android:orientation="vertical">
             <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                 android:orientation="horizontal"
                 android:paddingBottom="70px"
                 android:paddingTop="70px">
              
                  <TextView
                      android:id="@+id/tvScore"
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                      android:textStyle="bold"
                      android:textSize="10pt"/>
                  <TextView
                      android:id="@+id/tvBestScore"
                     android:layout_width="wrap_content"       
                     android:layout_height="wrap_content"
                      android:textStyle="bold"
                      android:textSize="10pt"
                      android:layout_weight="1"
                      android:gravity="right"/>
             </LinearLayout>
              <LinearLayout
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
                       android:orientation="horizontal"
                       android:paddingTop="155px"
                       android:paddingBottom="100px">
                   <Button
                          android:id="@+id/btnNewGame"
                          android:layout_width="fill_parent"
                    android:layout_height="wrap_content"
                    android:text="重新开始游戏"
                    />
             </LinearLayout>
    </LinearLayout>

    首先定义父布局为线性布局,再设置一个子布局为线性布局,并将方向设置为垂直方向,定义距离顶部和底部的间距。然后分别放置两个TextView,          分别表示当前的分数和最高分数,设置字体大小和属性,设置的最高分数的TextView靠右端放置。接着又定义了一个子布局线性布局,放置一个Button按钮,用来重新游戏。布局就先介绍到这。

  • 相关阅读:
    时间序列的小波分析
    粒子群算法优化BP生物能神经网络
    day:3.9基础复习
    计算机网络通信基础
    面向对象的补充
    python中的类和对象
    R语言基础
    函数(2)
    python开发第四篇:函数(1)
    Python开发【第三篇】:Python基本数据类型
  • 原文地址:https://www.cnblogs.com/lemonhome/p/4492635.html
Copyright © 2011-2022 走看看