編輯:關於Android編程
什麼叫創建圖片的副本? 因為我們直接從BitmapFactory取出來的圖片是可讀的,是不可以修改的。 假設用戶想修改這張圖片,一般是先根據原圖在內存中創建和原圖一模一樣大小的圖片,然後在上面修改,用戶感覺好像是在原圖上修改了,其實不然。
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //1: 先需要獲取到原圖片. 注意:我們獲得的圖片是只讀的,是不能寫的,如果想修改圖片,就得創建圖片的copy Bitmap bmsRc = BitmapFactory.decodeResource(getResources(), R.drawable.abc); //2:創建圖片的copy,可以在內存中創建一個和原圖一模一樣大小的bitmap Bitmap bmCopy = Bitmap.createBitmap(bmsRc.getWidth(), bmsRc.getHeight(), bmsRc.getConfig()); //2.1 創建一個畫筆 Paint paint = new Paint(); //2.2 創建畫板對象 Canvas canvas = new Canvas(bmCopy); //2.3 開始繪制和原圖一模一樣 canvas.drawBitmap(bmsRc, new Matrix(), paint); //在圖片上繪制一條直線,代表圖片的副本是可以修改的 canvas.drawLine(30, 30, 400, 400, paint); ImageView iv_src = (ImageView) findViewById(R.id.lv1); ImageView iv_copy = (ImageView) findViewById(R.id.lv2); //顯示 iv_src.setImageBitmap(bmsRc); iv_copy.setImageBitmap(bmCopy); } }其實創建圖片的副本很簡單,就如上代碼描述一樣
效果圖如下:
可以明顯的看見,第二張圖片是可以修改的。
本文以案例形式分析了Android中TelephonyManager類的用法。分享給大家供大家參考。具體如下:目錄結構:main.xml布局文件:<?xml
首先看效果下拉刷新: 上劃加載 在項目更新的過程中,遇到了一個將XListView換成recyclerView的需求,而且更換完之後大體效果不能變,但是對於下拉刷新這樣的
此篇邪惡一些,給單身屌絲發點“福利”,通過圖片的繪制,給美女脫掉衣服。原理:圖片覆蓋圖片,通過畫筆對頂端的圖片做一些特效處理,即手指觸摸的地方,設
榮耀8和榮耀v8有什麼不同?榮耀8發布後,和之前的發布的榮耀v8有什麼不一樣?相信很多人都有這樣的疑問,其實總的一句話就可以概括了:榮耀8主打小屏旗艦,榮耀