关于贪吃蛇示例代码的小小问题

a220315410 2010-11-11 09:14:18
    private void initSnakeView() {
setFocusable(true);

Resources r = this.getContext().getResources();

resetTiles(4);
loadTile(RED_STAR, r.getDrawable(R.drawable.redstar));
loadTile(YELLOW_STAR, r.getDrawable(R.drawable.yellowstar));
loadTile(GREEN_STAR, r.getDrawable(R.drawable.greenstar));

}

以上代码是SnakeView.java页中的一部分。
小弟的疑问在于,游戏中只存在红,绿,黄三种颜色的图片,代码也的确只loadTile三次,那为什么resetTiles(4)呢?
...全文
149 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
a220315410 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 liluvu 的回复:]

canvas.drawBitmap(mTileArray[mTileGrid[x][y]],
mXOffset + x * mTileSize,
mYOffset + y * mTileSize,
mPaint);
……
[/Quote]
恩,这个解释比较合理
纠结的木棉花 2010-11-16
  • 打赏
  • 举报
回复
我觉得第一次应该是初始化,肯定先有一个默认的图片,然后在设置
liluvu 2010-11-16
  • 打赏
  • 举报
回复
canvas.drawBitmap(mTileArray[mTileGrid[x][y]],
mXOffset + x * mTileSize,
mYOffset + y * mTileSize,
mPaint);

mTileGrid[x][y]是0的时候什么都不画,否则1,2,3时画定义的三种颜色。
a220315410 2010-11-15
  • 打赏
  • 举报
回复
新的一周开始了,先来顶顶自己的帖子
a220315410 2010-11-12
  • 打赏
  • 举报
回复
    public void resetTiles(int tilecount) {
mTileArray = new Bitmap[tilecount];
}
a220315410 2010-11-11
  • 打赏
  • 举报
回复
饿,不好意思,现在在家里没有源码。
resetTiles的效果是根据传入的参数,new一个ArrayLilst。
也就是生成了一个大小为4的ArrayList容器。
而LoadTile则是向这个生成的容器中添加元素。一次添加一个。
dinjay 2010-11-11
  • 打赏
  • 举报
回复
resetTiles干嘛了,贴出来

80,359

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧