2012-05-12 89 views
-1

我正在製作一款使用平板電腦/手機內置相機的Android應用程序。我需要幫助製作我剛纔拍攝的「可編輯」圖片。 idéa是用戶可以在圖片上繪製東西,就像你在繪畫中做的一樣,然後能夠將這些圖畫保存在它上面。在相片上繪製

我需要做些什麼才能做到這一點?

的代碼的主幹是#38-#41:http://thenewboston.org/list.php?cat=6

我的主類看起來是這樣的:http://pastebin.com/FH0J7u1A,我有一個按鈕,並在我的佈局xml文件的ImageView的。當我按下按鈕時,相機啓動,我可以保存一張圖片,然後保存在圖像查看器中。

+0

到目前爲止你做了什麼? newboston提供了很好的教程。但是用它作爲你問題的參考並沒有顯示你的努力。 –

+0

我在xml佈局中有一個按鈕和一個imageview。當我按下按鈕時,相機啓動,然後我可以拍照,如果我選擇保存它,它將出現在圖像視圖中的相同應用程序中。我的主要(和唯一類)看起來像這樣:http://pastebin.com/FH0J7u1A – user47

+0

閱讀這些:http://developer.android.com/reference/android/hardware/Camera.html&https://開發人員。機器人。com/resources/samples/ApiDemos/src/com/example/android/apis/graphics/FingerPaint.html –

回答

3

這是一個非常模糊的問題,但我明白,因爲我在六個月前就想過同樣的事情。可悲的是,模糊的問題會得到模糊的答案,而底線是SO上的任何人都不會爲你寫這段代碼。你有很多研究要做自己。這裏是我如何開始的基本描述。

首先考慮用相機綁定應用程序。這很容易,你可以調用onActivityResult的意圖,你可以接收他們拍攝的圖像文件的路徑。

您的編輯活動編輯的圖片必須有一個Canvas對象的佈局,你可能會需要一些按鈕的下面或者上面他們來接自己的繪圖工具。

佈局的畫布必須在單獨的類中實現,並且它需要實現可運行。這要求您在Canvas類中創建run()函數,並在其中創建一個循環。通過該循環的每次迭代,您將清除畫布,使用drawBitmap()繪製圖片以填充屏幕,然後繪製用戶繪製的所有內容。

現在,在編輯活動中,您將不得不實現觸摸監聽器。這將要求你製作一個onTouch()方法,它會告訴你一個MotionEvent告訴你觸摸發生的地點和方式。每次觸摸屏幕時,您都需要查看當前選定的工具,並將其添加到畫布上繪製的圖形中。

完成後,保存畫布的結果。我並不是說這是創建應用程序的最佳方式,而且我也不是專家。這僅僅是我作爲初學者開始思考的一個建議。

就像我說的,你有很多東西要學習!我建議您搜索任何您不瞭解的術語,或者您沒有聽說過的部件,並查看與之相關的教程。有人提到newboston,他們是對的,他有很好的教程。我還推薦Apress的一些書籍,特別是我已經提到任何涉及Canvas交互的「開始Android遊戲」。

+0

好的先生,非常感謝! 這是我需要的那種幫助。是的,我仍然是初學者,我不是很瞭解從哪裏開始或繼續,但是感謝你的建議,我應該如何與這本書和小冊子一起閱讀! – user47

0

看看SDK中的樣本目錄中的API演示,你應該找到原始繪畫的示例代碼。