0
我想在畫廊佈局中顯示一系列我自己的後代類視圖,但當它顯示時,畫廊中的每個自定義視圖都太大,即它們超過邊界。放入畫廊佈局的自定義視圖看起來太大
我已經設置了(以XML形式)每個視圖的背景爲"android:galleryItemBackground"
,並在我的派生View類中處理onMeasure()等,但由於某種原因,我的視圖總是繪製得比背景大。
任何人都可以給我任何想法我需要在我的自定義視圖類中實現什麼?
感謝
的的onDraw()方法是在這裏:當您從Adapter.getView()
方法得到他們
protected void onDraw(Canvas canvas){
/* Draw dial scale-arc */
canvas.drawArc(scaleArcRect, scaleArcStart, scaleArcSweep, false, scaleArcPaint);
canvas.drawArc(innerScaleArcRect, scaleArcStart, scaleArcSweep, false, innerScaleArcPaint);
/* Draw the scale-arc ticks */
drawScaleTicks(canvas);
/* Add text to dial */
//canvas.drawText(scaleFactorText, sFactorTextRect.left, sFactorTextRect.bottom, scaleTextPaint);
drawScaleLegend(canvas);
/*Draw the pointer */
canvas.save();
canvas.rotate(drawAngle,this.viewWidth/2,this.viewHeight/2);
canvas.drawPath(pointerPath, pointerPaint);
canvas.restore();
//canvas.drawText(scaleFactorText, sFactorTextRect.left,this.viewHeight/2, scaleTextPaint);
/* Update position feedback variables */
actualAngle = drawAngle;
/* signal to compute thread that the position has been updated */
isCommanded = false;
}
試過了。我在那裏設置了一個大小,它確實調整了我的自定義視圖,但仍然大於背景 – Kerry
然後,LayoutParams上的數學算法錯誤,圖庫的背景大小與您預期的不同,或者繪製自定義視圖時,它是繪圖比你想象的要大。 – AedonEtLIRA
是的,我傾向於同意你的觀點,但我不明白它是如何發生的。我的自定義視圖吸引了包含組的內容。我只是困惑,爲什麼這是發生 – Kerry