2013-07-18 66 views
-1

我正在使用Canvas對象繪製的android應用程序上工作。假設在畫布上繪製一個圓。有沒有辦法讓用戶將該圓圈拖放到畫布上的其他位置?在畫布上繪製的重新定位元素

+0

你能告訴我們你到目前爲止做了什麼嗎? – Dulanga

+0

我在canvas.i上添加了線條和圓圈,只需要一種方法來移動這些線條。可以在android – user2586488

+0

中使用'canvas.translate()',但需要首先調用'invalidate()'方法改變他們的立場。 – Dulanga

回答

1

如果我理解你的問題,那麼我認爲你的方法(你對它的思考方式)是錯誤的。當用戶畫一些東西時,說一句話,那麼你就需要將它吸收。那就是你要創建一個知道開始座標和結束座標的對象的實例,以及可能的顏色等等。然後,用戶會做一些手勢來選擇他們會想到的線條,但是你的程序知道什麼是對象,將其移動,然後您的程序將重新繪製畫布。

+0

嗨,謝謝你的答覆。要使用這種方法,我將首先必須知道用戶何時觸摸過行或在屏幕上繪製的一些其他元素。這是可能的Android的 – user2586488

+0

燁,看看這個,它可能會幫助... http://stackoverflow.com/questions/5743328/image-in-canvas-with-觸摸事件 – tallen

+0

實際上,上述回答了觸摸事件的問題。所以你會讓用戶做一些事情,將canvass放在「編輯」模式下,然後當他們碰觸時,通過「行」對象旋轉並找出哪條線最靠近他們觸摸的地方,然後當他們擡起來時,你改變該對象的開始和結束座標並重繪。它不像你可能認爲的那樣直截了當:-) – tallen