2013-06-25 50 views
0

爲什麼當我在畫布對象 上使用drawRect()並且在onCreate方法中聲明它時,矩形不顯示。爲什麼當我使用drawRect()時矩形不顯示?

代碼

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activitymain); 
    Chronometer stopWatch = (Chronometer)findViewById(R.id.chrono); 
    mDrawingActivity = (DrawingActivity)findViewById(R.id.the_canvas); 
    Button b = (Button)findViewById(R.id.startButton); 
    b.setText("start"); 
    b.setOnClickListener(this); 
} 

的OnDraw()方法

protected void onDraw(Canvas Square) 
    { 
     super.onDraw(Square); 
      Paint squareColor = new Paint(); 
      squareColor.setColor(Color.CYAN); // change the box color to cyan 
     Square.drawRect(100,100,100,100, squareColor); 
return; 
    } 

澄清:即使是按鈕和記時計沒有示出過和程序被強制關閉。

+5

請提供您正在繪製矩形的代碼 – Dimmerg

+0

只需在文檔中閱讀Canvas.drawRect()的參數'right'和'bottom'就意味着什麼 –

回答

7

您正在繪製一個點矩形。 更改行

Square.drawRect(100,100,100,100, squareColor); 

Square.drawRect(100, 100, 200, 200, squareColor) 

下面是從文檔的定義。

drawRect(float left, float top, float right, float bottom, Paint paint) 

使用指定的繪圖繪製指定的Rect。該矩形將根據油漆中的樣式進行填充或框定。

參數 左矩形的左側被吸入 頂部要繪製的矩形的頂側 右矩形的右側要繪製 底部的矩形的底側被吸入 油漆用於繪製矩形的油漆

相關問題