专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 移动开发

数独游戏(一)之绘制九宫格,并初始化数据

发布时间:2010-05-30 05:31:53 文章来源:www.iduyao.cn 采编人员:星星草
数独游戏(1)之绘制九宫格,并初始化数据

<数独游戏>之绘制九宫格,并初始化数据

 

1.在工程里的res/values目录下新建一个colors.xml来存放具体颜色值,已供程序通过R.color.颜色名 来调用

this.getResources().getColor(R.color.shudu_background)  获取配置文件中的颜色值

 

 

2.新建一个自定义图形类ShuduView继承View父类

 

 

 

1)画九宫格里面的 横线,纵线,每次画出的线要想达到某种效果,需画两条 之间格1像素的位置,且颜色也要搭配好

2)要想让字在单元格中居中,这是一个问题,得设置一下偏移量

X轴方向:比较好设置,就是单元格宽度除以2   , float x = width/2f ;

Y轴方向:并不是通过单元格高度除以2,因为涉及到基准线的概念,通过画笔对象调用 getFontMetrics() 方法,获取FontMetrics 对象,也就是获取了 ascent,top,descent,bottom 等属性,四个属性的值都是基于基准线而言

公式:float y = height/2f - (fm.ascent+fm.descent)/2 ;   通过单元格高度除以2,加上(ascent的高度减去descent)除以2

之所以上面的公式中出现减号,是因为 基准线的上方 是负数,


 

 

3.Game类,存放一些初始化的数据等等

 


4.Activty类

 


5.运行效果

 

 

 

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: