国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

【自定義控件】練習:drawBitmap顯示長圖

2019-11-06 09:58:54
字體:
來源:轉載
供稿:網友

長圖:

這里寫圖片描述

效果

這里寫圖片描述

主要涉及:canvas.drawBitmap(Bitmap bitmap,Rect src,Rect dsc,Paint paint); 設計:使用drawBitmap 進行區域作畫,每一次畫長圖的一個item到界面上。 設計點擊事件,點擊一次進行圖片的更新,顯示下一張圖片,如果到最后一張,則重新開始顯示 計算得,圖片的寬高,將控件的寬高設置為小圖片的寬高。

主要代碼:

@OverridePRotected void onDraw(Canvas canvas) { super.onDraw(canvas); int left = currentPic * width; int top = 0; int right = (currentPic + 1) * width; int bottom = width; //圖像選取 Rect src = new Rect(left, top, right, bottom); RectF dsc = new RectF(0, 0, width, height); canvas.drawBitmap(bitmap, src, dsc, null);}@Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); //獲取圖片的大小 int picHeight = bitmap.getHeight(); int picWidth = bitmap.getWidth(); width = picWidth / totalPic; height = picHeight; setMeasuredDimension(width, height);}@Overridepublic boolean onTouchEvent(MotionEvent event) { int action = event.getAction(); if (action == MotionEvent.ACTION_UP) { //處理點擊事件 if (currentPic == totalPic - 1) { currentPic = -1; } currentPic++; postInvalidate(); } return true;}

代碼: https://github.com/WhatWeCan/customer_views/tree/master/drawBitmap


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 福清市| 抚宁县| 镇宁| 宜黄县| 都江堰市| 无棣县| 郎溪县| 上蔡县| 抚宁县| 涪陵区| 建昌县| 郴州市| 远安县| 江西省| 石屏县| 琼海市| 池州市| 开阳县| 开鲁县| 民乐县| 淮南市| 龙陵县| 河南省| 定安县| 武陟县| 上林县| 会泽县| 东城区| 深水埗区| 和静县| 白河县| 习水县| 卢龙县| 民丰县| 龙江县| 林芝县| 叙永县| 长顺县| 峨眉山市| 城固县| 海原县|