《安卓课程设计分析报告21015.pdf》由会员分享,可在线阅读,更多相关《安卓课程设计分析报告21015.pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、安卓课程设计报告 设计题目:五子棋 目录 一需求分析 网络技术的日新月异让世界惊叹,高速发展的网络技术和日渐成熟的 3G 网络,让越来越多的用户沉浸在手机的世界而无限欢快。不管是逛街、乘地铁,还是吃饭,排队,跟随潮流的时尚一群都利用拇指掌控着周围的一切,似乎只有手机才能让他们真正体验娱乐的极致。手机已然成为本世纪最有作为、最受欢迎的发明。而手机的流行更成就了相关应用和网站,让他们在移动互联网大放异彩的当下备受用户关注。二功能模块 三.界面设计 3.1 开始界面 3.2 游戏界面 3.3 点击认输界面 四.分工说明 张哲:编辑 main 代码 刘凯:获取 MainAct 主界面 游戏开始界面 开
2、始游戏 认输 推出 丁章华:写报告 黄思淳:程序注释 叶浩:编辑 MyView 代码 五.所遇到的问题 1 登录界面的部分功能没有实现。2 界面的布局没有很清晰。3 部分代码不够简洁。六.代码注释 publicMyView(Contextcontext,floatwidth,floatheight)super(context);/TODOAuto-generatedconstructorstub this.width=(float)(width);this.height=(float)(height);flag=true;holder=this.getHolder();this.setFocu
3、sable(true);holder.addCallback(this);chess=newint99;msg=点击开始;publicvoidmyDraw()/获得画布 Canvascanvas=holder.lockCanvas();/获得画笔 Paintpaint=newPaint();/绘画 paint.setAntiAlias(true);Matrixmatrix=newMatrix();intww=bitmap.getWidth();/获取资源位图的宽 inthh=bitmap.getHeight();/获取资源位图的高 floatw=(width/(float)ww);floath
4、=(float)(height/(float)hh)/1.1);matrix.postScale(w,h);/获取缩放比例 Bitmapbmp=Bitmap.createBitmap(bitmap,0,0,ww,hh,matrix,true);/根据缩放比例获取新的位图 canvas.drawBitmap(bmp,0,0,paint);/在屏幕上画出位图 intsx=(int)width;intsy=(int)(height/1.1);paint.setColor(Color.BLACK);/适应屏幕画横线竖线 tempy=(float)(0.6*sy-(0.6*sy)%8-16)/8);ax
5、=(sx-tempy*8)/2;ay=(float)(0.6*sy)%8)/2)+8;bx=sx-(sx-tempy*8)/2;cy=(float)(0.6*sy-(0.6*sy)%8)/2-8);for(inti=0;i9;i+)canvas.drawLine(ax,ay+tempy*i,bx,ay+tempy*i,paint);canvas.drawLine(ax+tempy*i,ay,ax+tempy*i,cy,paint);/画棋盘下方现实信息 paint.setColor(Color.BLACK);paint.setTextSize(30);/floattx=3*sx/8;/floa
6、tty=(float)(0.75*sy);canvas.drawText(msg,3*sx/8-25,(float)(0.72*sy),paint);canvas.drawText(开始,(float)(0.175*sx),(float)(0.92*sy),paint);canvas.drawText(认输,(float)(0.425*sx),(float)(0.92*sy),paint);canvas.drawText(退出,(float)(0.675*sx),(float)(0.92*sy),paint);/画棋子 intqx,qy;for(inti=0;i9;i+)for(intj=0;
7、j=0.125*sx&x=0.86*sy&y0.375*sx&x=0.86*sy&y0.625*sx&x=0.86*sy&y=ax&y=ay&(x=bx+tempy)&y=(cy+tempy)x=(int)(x-ax)/tempy);y=(int)(y-ay)/tempy);if(chessxy=0)/黑方下棋 if(isBlack)chessxy=1;isBlack=false;msg=白方落子;/白方下棋 else chessxy=2;isBlack=true;msg=黑方落子;booleanisWin=checkWin(x,y);if(isWin)if(isBlack=false)msg=黑方获胜;game_start=false;elseif(isBlack=true)msg=白方获胜;game_start=false;myDraw();returntrue;