編輯:高級開發
在android系統中圖形類為我們提供了很多圖形對象類,很多網友知道Drawable,了解Bitmap之類的,那麼今天的Picture和PictureDrawable又是什麼東西呢? Android123再次給大家說下,Picture在android.graphics.Picture包中,相對於Drawable和Bitmap而言,Picture對象就小巧的多,它並不存儲實際的像素,僅僅記錄了每個繪制的過程。整個類提供了兩個重載形式,其中比較特別的是Picture(Picture src) 從一個Picture對象去實例化操作,
Canvas beginRecording(int width, int height) //開始記錄繪制過程
static Picture createFromStream(InputStream stream) //靜態方法,從輸入流創建一個Pictrue對象
void draw(Canvas canvas) //在canvas上畫這個picture對象
void endRecording() //結束錄制繪制過程
int getHeight()
int getWidth()
void writeToStream(OutputStream stream) //將繪制結果寫到輸出流中
我們可以看到整個類中方法不多,但主要的beginRecording和endRecording記錄開始和結束,最終通過draw方法繪制到畫布上去,而createFromStream和writeToStream可以幫助我們從流中讀寫這個Picture對象,我們可以將整個繪制過程通過FileInputStream或FileOutputStream放到文件中去。
PictureDrawable是什麼呢? 這裡Android123提示大家它位於android.graphics.drawable.PictureDrawable 是從Drawable類繼承而來的,它的構造方法只有一個就是從Picture對象中實例化,PictureDrawable(Picture picture)
void draw(Canvas canvas) // 繪制到Canvas
int getIntrinsicHeight()
int getIntrinsicWidth()
int getOpacity() //獲取透明度級別
Picture getPicture() //從PictureDrawable轉為Picture
void setAlpha(int alpha) //設置透明級別
void setColorFilter(ColorFilter colorFilter)
void setDither(boolean dither)
void setFilterBitmap(boolean filter)
void setPicture(Picture picture)
下面我們就一個簡單的例子,來看看它們的具體工作原理:
Picture p=new Picture();
Canvas c=p.beginRecording(320,480);
//// c.drawBitmap() ,drawLine等方法處理
p.endRecording();
PictureDrawable pd=new PictureDrawable(p);
pd.draw(canvaeObj) ;
前段時間我們對幾個谷歌官方文檔進行了介紹,本文為提高android用戶體驗的三部曲,出色的用戶體驗有三個特征:速度快、響應及時以及無縫。下面的信息幫助你的應用如何能夠在
android程序作為谷歌企業戰略的重要組成部分,最上層是各種應用軟件,包括通話程序,短信程序等,應用軟件則由各公司自行開發,以Java編寫,並且添加junit.jar
Google推出的android應用手機通過與運營商、設備制造商、開發商和其他有關各方結成深層次的合作伙伴關系,但同顯而易見的,是手機具有便攜性,24小時隨身相伴性和及
droid 的擴展工程包含在external文件夾中,是一些經過修改後適應android系統的開源工程。有一些工程在主機上運行,也有些在目標機上運行。由於包含的擴展工程