2017-09-30 127 views
1

我正在嘗試在我的佈局中創建一個圖形,這可以在Linearlayout中進行限制。示例=>Print App這是我的應用程序,圖形必須位於寫入「Diagram」的白色區域。如何繪製圖形? - xamarin

圖形只需要直線和貝塞爾曲線。

事實上,我不知道它是否有我可以繪製的特定對象。 與行(x1,y1,x2,y2)。

public class MyView : View 
{ 
    protected override void OnDraw(Canvas canvas) 
    { 
     base.OnDraw(canvas); 
     Paint green = new Paint { 
      AntiAlias = true, 
      Color = Color.Rgb(0x99, 0xcc, 0), 
     }; 
     green.SetStyle(Paint.Style.FillAndStroke); 

     Paint red = new Paint { 
      AntiAlias = true, 
      Color = Color.Rgb(0xff, 0x44, 0x44) 
     }; 
     red.SetStyle(Paint.Style.FillAndStroke); 

     float middle = canvas.Width * 0.25f; 
     canvas.DrawPaint(red); 
     canvas.DrawRect(0, 0, middle, canvas.Height, green); 
    } 
} 

如何在佈局中的特定位置繪製此圖形?

+0

歡迎來到SO!這個例子很棒,因爲它顯示了你正在努力完成的任務。爲了社區提供有用的建議,請顯示您已經嘗試的內容,即某些代碼,然後提出更具體的問題。 – DSway

回答

0

如何在我的佈局的特定位置繪製此圖像?

後,您已經完成抽籤視圖MyView,您可以用XML把它放在你的佈局,例如像這樣:

<YOURNAMESPACE.MyView android:layout_height="wrap_content" 
         android:layout_width="wrap_content" 
         android:id="@+id/myview" /> 

在這種情況下,可以像使用正常的UI組件佈局,意味着您可以使用Margin,Gravity和此類佈局參數來確定應放置的位置。

如果你想在後面的代碼中實現它,你可以使用LayoutParams。具體的佈局代碼取決於您使用的是哪個父視圖。

基本上這意味着,您可以在View的子類中使用Paint來繪製視圖,並將其置於佈局中的UI組件。