2048 游戏制作过程(Java 描述):第五节、界面美化
这一节,我们将介绍游戏界面的美化以及游戏数据的存储。 首先创建一个 color.xml 资源文件,用来保存每个数字对应的背景色和前景色。右击 res 文件夹,选择 New,单击 Android resource file,输入 color,单击 Next 即可。 新建资源 修改代码如下: <?xml version="1.0" encoding="utf-8"?> <resources> <color name="bg2">#eee4da</color> <color name="text2">#776e65</color> <color name="bg4">#ede0c8</color> <color name="text4">#776e65</color> <color name="bg8">#f2b179</color> <color name="text8">#f9f6f2</color> <color name="bg16">#f59563</color> <color name="text16">#f9f6f2</color> <color name="bg32">#f67c5f</color> <color name="text32">#f9f6f2</color> <color name="bg64">#f65e3b</color> <color name="text64">#f9f6f2</color> <color name="bg128">#edcf72</color> <color name="text128">#f9f6f2</color> <color name="bg256">#edcc61</color> <color name="text256">#f9f6f2</color> <color name="bg512">#edc850</color> <color name="text512">#f9f6f2</color> <color name="bg1024">#edc53f</color> <color name="text1024">#f9f6f2</color> <color name="bg2048">#edc22e</color> <color name="text2048">#f9f6f2</color> <color name="bgsuper">#3c3a32</color> <color name="textsuper">#f9f6f2</color> </resources> 其中 bg 表示背景色,text 表示前景色,切换到 Card 界面,在 setNumber 中添加如下代码: switch(number) { case 0: tvNumber.setBackgroundColor(0x33FFFFFF); break; case 2: tvNumber.setTextColor(getResources().getColor(R.color.text2)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg2)); break; case 4: tvNumber.setTextColor(getResources().getColor(R.color.text4)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg4)); break; case 8: tvNumber.setTextColor(getResources().getColor(R.color.text8)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg8)); break; case 16: tvNumber.setTextColor(getResources().getColor(R.color.text16)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg16)); break; case 32: tvNumber.setTextColor(getResources().getColor(R.color.text32)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg32)); break; case 64: tvNumber.setTextColor(getResources().getColor(R.color.text64)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg64)); break; case 128: tvNumber.setTextColor(getResources().getColor(R.color.text128)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg128)); break; case 256: tvNumber.setTextColor(getResources().getColor(R.color.text256)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg256)); break; case 512: tvNumber.setTextColor(getResources().getColor(R.color.text512)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg512)); break; case 1024: tvNumber.setTextColor(getResources().getColor(R.color.text1024)); tvNumber.setBackgroundColor(getResources().getColor(R.color.bg1024)); break; case...