第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我的棋盤只有橫豎各一條線?

我的棋盤只有橫豎各一條線?

慕九州4868525 2016-08-28 20:28:13
package?com.imooc_wuziqi; import?android.content.Context; import?android.graphics.Canvas; import?android.graphics.Paint; import?android.util.AttributeSet; import?android.view.View; import?android.view.ViewTreeObserver; public?class?WuziqiPanel?extends?View?{ ????private?int?mPanelWidgh; ????private?int?MAX_LINE=10; ????private?float?mLineHeight; ????private?Paint?mPaint=new?Paint(); ????public?WuziqiPanel(Context?context,?AttributeSet?attrs)?{ ????????super(context,?attrs); ????????setBackgroundColor(0x44ff0000); ????????init();} ????private?void?init() ????{mPaint.setColor(0X88000000); ????????mPaint.setAntiAlias(true); ????????mPaint.setDither(true); ????????mPaint.setStyle(Paint.Style.STROKE); ????} ????@Override ????protected?void?onMeasure(int?widthMeasureSpec,?int?heightMeasureSpec)?{ ????????int?widthSize=MeasureSpec.getSize(widthMeasureSpec); ????????int?widthMode=MeasureSpec.getMode(widthMeasureSpec); ????????int?heightSize=MeasureSpec.getSize(heightMeasureSpec); ????????int?heightMode=MeasureSpec.getMode(heightMeasureSpec); ????????????????int?width=Math.min(widthSize,heightSize); ????????????????if(widthMode==MeasureSpec.UNSPECIFIED)?{ ????????????????????width?=?heightSize; ????????????????}else?if(heightMode==MeasureSpec.UNSPECIFIED){ ????????????????????width=widthSize; ????????????????} setMeasuredDimension(width,width); ????} ????@Override ????protected?void?onSizeChanged(int?w,?int?h,?int?oldw,?int?oldh)?{ ????????super.onSizeChanged(w,?h,?oldw,?oldh); ????????mPanelWidgh=w; ????????mLineHeight=mPanelWidgh*1.0f/MAX_LINE; ????} ????@Override ????protected?void?onDraw(Canvas?canvas)?{ ????????super.onDraw(canvas); ???????drawBoard(canvas); ????} ????private?void?drawBoard(Canvas?canvas)?{ ????????int?w?=?mPanelWidgh; ????????float?lineHeight?=?mLineHeight; ????????for?(int?i?=?0;?i?<?MAX_LINE;?i++)?{ ????????????int?startX?=?(int)?(lineHeight?/?2); ????????????int?endX?=?(int)?(w?-?lineHeight?/?2); ????????????int?y?=?(int)?((0.5?+?i)?+?lineHeight); ????????????canvas.drawLine(startX,?y,?endX,?y,mPaint); ????????????canvas.drawLine(y,startX,y,?endX,?mPaint); ????????} ????} }
查看完整描述

1 回答

?
漢江怪人

TA貢獻50條經(jīng)驗 獲得超11個贊

你的第63行?

?int?y?=?(int)?((0.5?+?i)?*?lineHeight);//把加號改成乘號

這樣改應(yīng)該就好了,i是第i條線,每條線之間間隔lineHeight那么大的距離剛開始從0.5開始估計是要和屏幕邊界有間距吧,所以每次第i條線都要多l(xiāng)ineHeight 所以要用乘的,i條線的y軸位置是i*lineHeight + 0.5*lineHeight,0.5*lineHeight是加上的邊界

查看完整回答
反對 回復(fù) 2016-08-29
  • 1 回答
  • 0 關(guān)注
  • 1088 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號