999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android的簡易黑板設計與實現

2015-12-21 02:41:30宋國柱王會霞SongGuozhuWangHuixia
互聯網天地 2015年7期
關鍵詞:功能模塊方法設計

宋國柱,王會霞/Song Guozhu,Wang Huixia

(黃岡師范學院教育科學與技術學院 黃岡438000)

1 引言

目前,移動學習這種新型的學習形式具有教學個性化、學習便捷性、情境相關性、跨時空性、交互性、移動性、及時性、超媒體性以及泛在性等特點,可以為學習者提供因時、因地、隨需要而發生的數字化學習,從而決定了它在未來教育中將創造一個全新的學習和教學模式,并將達到一些現在教學模式無法達到的效果[1]。在研究探索中發現,目前移動學習側重于教與學的關系、教學模式和課程資源開發與建設等[2]。但如何將傳統的“黑板”教學方式與移動技術相結合,以實現教學界面和語音實時同步的交互學習有待進一步加強。

移動技術的迅速發展、移動運營平臺和移動服務在教育領域的應用為移動學習奠定了堅實的物質基礎。目前在移動技術中,Android平臺成為全球最受歡迎的移動智能終端平臺之一。本文針對當前流行的Android 圖形/圖像技術,設計并實現一個具有交互功能的簡易黑板。首先對黑板的功能模塊、類、界面進行設計,然后對黑板的相關技術及實現進行詳細闡述,最后搭建開發平臺測試了該系統。這對一對多實時交互式移動學習的探索有一定的啟發意義。

2 黑板設計

2.1 功能模塊設計

通過對實際需求進行調查分析可以發現,黑板的功能模塊主要包括3 個部分,如圖1所示。

圖1 黑板功能模塊

①粉筆:選擇粉筆的顏色和寬度。

②黑板擦:擦除黑板中所寫的內容。

③保存:保存版面的內容。

2.2 類的設計

根據黑板的功能模塊需求共設計了兩個類:DrawActivity 和DrawView。類的設計如圖2所示。

①DrawActivity 類:主要實現加載黑板視圖、創建選項菜單以及響應菜單項事件等功能。

②DrawView 類:主要實現畫筆的創建、(顏色、寬度、填充方式等)初始化、畫布的創建、路徑的繪制、黑板版面保存和黑板擦等功能。

DrawView 類中,onTouchEvent()方法為黑板添加觸摸事件監聽器。該方法的詳細設計如圖3所示。

該方法對黑板觸摸事件做出處理,觸摸的動作包括按下、移動和放開。按下時,將繪圖的起始點移到該坐標點的位置;移動時,當移動位置(x,y)大于5 個像素時,使用路徑繪制軌跡;放開時,在緩存畫布上繪制路徑,并重置路徑對象。最后更新視圖。

2.3 界面設計

黑板的界面設計采用幀布局中添加畫布作為整個黑板版面,在整個版面中使用菜單加載黑板的功能模塊,如粉筆、黑板擦、保存均作為菜單項。

3 關鍵技術與黑板實現

3.1 Android 圖形/圖像處理技術

在Android中,繪制圖像時最常用的就是Paint類、Canvas 類、BitmapFactory 類和Path 類。

圖2 類的設計

圖3 onTouchEvent( )方法詳細設計

(1)Paint 類

代表畫筆,用來描述圖形的顏色和風格,如線寬、顏色、透明度和填充效果等信息。使用Paint 類時,首先需要創建該類對象,可以通過該類提供的構造方法來實現。通常情況下,創建該類對象后,可以通過該對象提供的方法對畫筆的默認設置進行改變,如改變畫筆的顏色、筆觸寬度等[3]。

(2)Canvas 類

代表畫布,通過該類提供的方法,可以繪制各種圖形(如矩形、圓形和線條等)。通常情況下,要在Android中繪圖,首先需要創建一個繼承自View類的視圖,并且在該類中重寫onDraw(Canvas canvas)方法,然后在顯示繪圖的Activity中添加該視圖。

(3)BitmapFactory 類

代表位圖,是Android 系統中圖像處理的一個重要類。該類不僅可以獲得圖像文件信息,進行圖像剪切、旋轉、縮放等操作,還可以指定保存圖像文件的格式。

(4)Path 類

代表路徑,該類中包含一組矢量繪圖,如畫圓、矩形、弧、線條等。其中drawPath()方法,可以將定義好的路徑繪制在畫布上[4]。

3.2 黑板界面的實現

黑板的界面設計主要包括黑板版面和功能菜單的實現。黑板版面的實現是在mail.xml 文件中添加幀布局管理器,然后加載DrawView 類;功能菜單的實現是在默認創建的DrawActivity中,為實例添加選項菜單。菜單資源toolsmenu.xml 在XML中定義后,可以通過MenuInflator Service的inflate 方法把菜單填充(inflate)到應用程序中,然后重寫onOptionsItemSelected()方法,再分別對各個菜單項選擇做相應的處理。創建選項菜單方法onCreateOptionsMenu(Menu menu)如下。

3.3 功能模塊的實現

創建一個名稱為DrawView的類,該類繼承自android.view.View 類。在DrawView 類中,首先定義程序中所需的屬性,然后添加構造方法,并重寫onDraw(Canvas canvas)方法用于設置背景顏色、繪制cacheBitmap、繪制路徑以及保存當前繪制狀態到棧中,最后調用restore 方法恢復所保存的狀態。在DrawView 類的構造方法中,首先獲取屏幕的寬度和高度,并創建一個與該View 類大小相同的緩沖區,然后創建一個新的畫面,并實例化一個路徑,再將內存中的位圖繪制到cacheCanvas中,最后實例化一個畫筆,并設置畫筆的相關屬性。

在DrawView 類中,重寫onTouchEvent()方法,為該視圖添加觸摸屏事件監聽器,在該方法中,首先獲取觸摸事件發生的位置,然后應用switch 語句對事件的不同狀態添加響應代碼,最后調用invalidate()方法更新視圖。onTouchEvent()方法的實現如下。

橡皮擦的功能是通過clear()方法實現。在該方法中,setXfermode(Xfermode xfermode)方法用于設置圖形重疊時的處理方式,如合并、交集和并集等。

保存當前版面的是save()方法,在該方法中,調用saveBitmap()方法將當前繪圖保存為PNG 格式的圖片。在saveBitmap()方法中,首先在SD 卡上創建一個文件,然后創建一個文件輸出流對象,通過調用Bitmap 類的compress()方法將繪圖內容壓縮為PNG 格式并輸出到文件輸出流對象中,最后將緩沖區的數據全部寫到輸出流中,并關閉輸出流對象。SaveBitmap()方法的實現如下。

4 測試

本系統的開發與調試采用Android SDK[5]自帶的模擬器作為實驗平臺,開發平臺的搭建在此不予詳述。該平臺生成的.apk 文件可以發布和安裝到實體智能手機中運行,運行效果如圖4所示。

圖4 簡易黑板界面

5 結束語

基于Android的簡易黑板具有操作簡便、功能明確的特點,為移動學習、辦公提供了良好的人機界面交互環境。但該系統在工具欄的設計以及基于移動網絡的界面同步等方面的功能還有待改進。

[1]郭紹青,黃建軍,袁慶飛.國外移動學習應用發展綜述[J].外國電教,2011,(5):105-109.

[2]方海光,王紅云,黃榮懷.移動學習的系統環境路線圖[J].現代教育技術,2011,(21):14-20.

[3]明日科技.Android 從入門到精通[M].北京: 清華大學出版社,2012.

[4]BILL P,BRIAN H.Android Programming[M].北京:人民郵電出版社,2014.

[5]Android NDK (April 2015)[EB/OL].http://developer.android.com/sdk/ndk/,2015.

猜你喜歡
功能模塊方法設計
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于ASP.NET標準的采購管理系統研究
軟件導刊(2016年9期)2016-11-07 21:35:42
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
輸電線路附著物測算系統測算功能模塊的研究
M市石油裝備公服平臺網站主要功能模塊設計與實現
石油知識(2016年2期)2016-02-28 16:20:16
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
功能模塊的設計與應用研究
主站蜘蛛池模板: 中文字幕无码电影| 孕妇高潮太爽了在线观看免费| 一级爱做片免费观看久久| 98超碰在线观看| 午夜精品久久久久久久2023| 夜夜操国产| 亚洲天堂网视频| 国产成人综合日韩精品无码不卡| 亚洲第一视频免费在线| 欧美激情综合| 青青草原国产| 亚洲中文字幕久久精品无码一区| 国产网站黄| 又黄又爽视频好爽视频| 一级黄色欧美| 玖玖精品视频在线观看| 国产91蝌蚪窝| 亚洲日本中文字幕乱码中文| 亚洲综合香蕉| 天堂av综合网| 国产成人亚洲无吗淙合青草| 欧美日韩中文国产va另类| 欧美国产日韩一区二区三区精品影视| 成人毛片在线播放| AV熟女乱| 美女视频黄频a免费高清不卡| 国产成+人+综合+亚洲欧美| 狠狠躁天天躁夜夜躁婷婷| 久久香蕉国产线看观看亚洲片| 中文字幕丝袜一区二区| 色综合天天视频在线观看| 亚洲美女操| 国产女人18水真多毛片18精品| 韩国v欧美v亚洲v日本v| 亚洲男人的天堂视频| 国产91无码福利在线| 女人爽到高潮免费视频大全| 亚洲丝袜中文字幕| 亚洲欧美极品| 国产综合在线观看视频| 男人的天堂久久精品激情| 免费人成视网站在线不卡| 亚洲全网成人资源在线观看| 91精品日韩人妻无码久久| 国产第一页免费浮力影院| 国产亚洲欧美日韩在线一区| 欧美视频在线第一页| 欧美日韩激情在线| 狠狠色综合网| 精品午夜国产福利观看| 国产成人喷潮在线观看| 久久精品中文字幕免费| 久久五月视频| 婷婷久久综合九色综合88| 国产精品白浆在线播放| 欧美亚洲国产精品久久蜜芽| 五月天婷婷网亚洲综合在线| 毛片基地视频| 久久久精品国产SM调教网站| 2022国产91精品久久久久久| 欧美日韩国产在线人成app| 久久久久免费看成人影片 | 九色91在线视频| 精品久久久久久久久久久| 97久久超碰极品视觉盛宴| 国产成人高清在线精品| 91午夜福利在线观看| 亚洲一区二区无码视频| 成人另类稀缺在线观看| 午夜三级在线| 欧洲一区二区三区无码| 国产精品视频猛进猛出| 国产精品久久久久无码网站| 国产偷国产偷在线高清| 91精品国产丝袜| 午夜精品区| 亚洲一级毛片| 久久久精品无码一二三区| 99热在线只有精品| 热99精品视频| 国产免费久久精品99re不卡| 在线播放国产一区|