2016-11-04 122 views
3

我正在開發和Android應用程序,但我對我的項目的可行性有一些懷疑。如何在Android中顯示位圖Bitmap

我必須實現由ImageView組成的自定義佈局,該佈局顯示圖像,特別是VectorDrawable。

重疊的ImageView還有一個SurfaceView是:

  • 捕捉觸摸的每一個座標;
  • 每當我觸摸屏幕時畫一個位圖(在某個位置)。

其目的是顯示背景圖像並將其用作參考,每次用戶觸摸屏幕時必須插入SurfaceView上的標記,此技術允許模擬在圖像上插入標記。

現在的問題是:

還有其他更好的方法來做到這一點? 我已經實現了,這個想法可行,但我對SurfaView有一些限制(例如我無法將它插入到ScrollView中)。

而在最後:

考慮到由目前的推理,假設有一個ImageView的,可展示VectorDrawable,是否有可能創建一個放大和縮小圖像(VectorDrawable)的功能?

p.s.我很抱歉提出了兩個問題,但整體密切相關,我認爲打開兩個線程是愚蠢的。

回答

1

任務1:您的任務可以使用SurfaceView來實現,但我假設在繪製圖像之後,如果這是您可能需要分別跟蹤每個圖像的情況,則希望它保留。如果您的任務只是繪製圖像,您還可以覆蓋View,它可以執行相同的任務,但也會提供透明度和基本佈局實現。 ViewSurfaceView之間的區別在於性能,SurfaceView在雙緩衝區中具有相當低的水平,併爲您提供更多控制。此外,如果圖像數量很小,您可以覆蓋FrameLayout和產卵ImageView。它效率不高,但實施起來會更容易。

任務2:您可以通過使用setScaleXsetScaleY輕鬆縮放ImageView。但是這可能使圖像像素化。加載一個大的Bitmap,然後在自定義視圖上繪製它將是更好的方法。