国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Android的題庫系統(tǒng)設(shè)計與實現(xiàn)

2018-05-15 08:31涂小琴高毅
軟件導(dǎo)刊 2018年4期
關(guān)鍵詞:Android系統(tǒng)移動學(xué)習(xí)

涂小琴 高毅

摘 要:借助Android平臺,采用SQLite輕量級數(shù)據(jù)庫,以TextView和ImageView實現(xiàn)圖文并茂的方法設(shè)計了題庫系統(tǒng)。系統(tǒng)實現(xiàn)了對知識點分類復(fù)習(xí),以及單元測試和綜合測試。詳細介紹了系統(tǒng)設(shè)計與實現(xiàn)過程,以及實現(xiàn)的關(guān)鍵技術(shù),為其它類別的考試題庫系統(tǒng)提供了一個框架和可參考的模板。

關(guān)鍵詞:計算機等級考試;Android系統(tǒng);移動學(xué)習(xí)

DOI:10.11907/rjdk.172597

中圖分類號:TP319

文獻標識碼:A 文章編號:1672-7800(2018)004-0101-03

Abstract:In order to facilitate college students review examination knowledge points and improve the passing rate of students examinations, we design question bank system based on Android platform, SQLite lightweight database,through the realization of illustrations in TextView and ImageView. The classification of knowledge points unit testing and integration testing are realized in the system. This paper analyzes the significance of the design system from the current situation of student learning. With the help of Android platform, we provide students with a review system for Computer Rank Examination and it provides a framework and reference for other examination questions bank system construction.

Key Words:national computer ran examination; android system; mobile learning

0 引言

計算機等級考試是大學(xué)生的一項重大考試,考試過級率在一定程度上反映學(xué)生的計算機整體水平。

根據(jù)eMarketer的數(shù)據(jù)顯示,2016年,全球智能手機用戶已達21.6億, 10個智能手機用戶中就有8人使用Android系統(tǒng)的智能手機,Android市場發(fā)展迅速,各種應(yīng)用層出不窮[1],但針對計算機等級考試的卻很少見。

本文借助Android平臺,開發(fā)了一個可以隨時隨地復(fù)習(xí)的系統(tǒng),借助互聯(lián)網(wǎng),學(xué)生可合理利用課余時間進行復(fù)習(xí)[2-3]。

1 系統(tǒng)設(shè)計

1.1 需求描述

本系統(tǒng)以MS Office二級為例進行需求描述。

系統(tǒng)需根據(jù)不同的考點進行題型復(fù)習(xí),讓不同水平的學(xué)生都可以有的放矢地進行學(xué)習(xí),并給出題目的詳細解析,分類越細致,對學(xué)生的幫助就越大。針對MS Office二級的考試大綱,將考試內(nèi)容分為11個考點。根據(jù)不同的考點進行復(fù)習(xí),同時也可自我進行綜合測試,提高過級率。

1.2 系統(tǒng)總體設(shè)計

圖1為系統(tǒng)組織結(jié)構(gòu)。由于計算機等級考試類別很多,所以每個類別考試都有一個移動應(yīng)用端。

在手機應(yīng)用端,學(xué)生可通過選擇等級考試類別進行復(fù)習(xí)。類別選擇后,系統(tǒng)將數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)入客戶端,再次進入時系統(tǒng)會默認前一次的選擇。進入后,可自由選擇使用“試題集”進行復(fù)習(xí)或進行“單元測試”以及“綜合測試”。在“單元測試”和“綜合測試”中,答完相應(yīng)的題才能查看答案。在“試題集”中,答完一道題就可以看到題目的詳細解析,滿足不同水平學(xué)生的要求。

2 數(shù)據(jù)庫設(shè)計

SQLite是輕量級嵌入式數(shù)據(jù)庫引擎,支持SQL語言,只利用很少的內(nèi)存就有很好的性能?,F(xiàn)在的主流移動設(shè)備如Android、iPhone等都使用SQLite作為復(fù)雜數(shù)據(jù)的存儲引擎。為減輕移動設(shè)備負擔(dān),也為了方便在沒有網(wǎng)絡(luò)的情況下使用,本系統(tǒng)采用SQLite數(shù)據(jù)庫存儲試題。試題內(nèi)置在客戶端中,安裝客戶端后不需要進行任何聯(lián)網(wǎng)操作。試題E-R圖如圖2所示。

3 系統(tǒng)實現(xiàn)

3.1 圖文顯示實現(xiàn)

圖文混排方法有:①只用一個TextView實現(xiàn),然后根據(jù)圖片大小動態(tài)決定圖片所在文字行的行高及字符數(shù)等。這個方案有一個很大的缺點:如果在TextView中插入控件則需要留出較大的空間,因為文字顯示效果是隨著圖片的大小不斷變化的;②使用WebView實現(xiàn),但需要數(shù)據(jù)適配器適配。作為一個小型項目,有點大材小用;③利用ListView,文本通過TextView實現(xiàn),圖片通過ImageView控件顯示,但每個TextView只能顯示一行文字;④對第③種方案進行了改進,將文本用TextView顯示,將圖片用ImageView顯示,控制好TextView與ImageView出現(xiàn)的順序。

本系統(tǒng)采用第④種方案實現(xiàn)圖片和文字的顯示,既簡單又高效。將要顯示的圖片全部存放在drawable文件夾中,在下面的程序中,圖片寬度的參數(shù)match_parent與fill_parent意思相同,指將圖片填充整個屏幕。圖片高度wrap_content指根據(jù)圖片大小自動進行高度設(shè)置。

android:id="@+id/fujian"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_gravity="center_horizontal"

android:scaleType="fitCenter"

android:adjustViewBounds="true"

android:contentDescription="@string/fujian"/>

讀取數(shù)據(jù)時,通過函數(shù)ShowList(),HashMap實現(xiàn),關(guān)鍵代碼如下:

private void showList()

{

mylistItem=new ArrayList>();

for(int i=0;i

{HashMap map=new HashMap ();

String timuxinxi="題目信息:"+ztnf[i]+"第"+ztth[i]+"題";

map.put("tmxx", timuxinxi);

String timu="題目:"+sttm[i]; map.put("sttm", timu);

fj[i]=fj[i]; map.put("fj", fj[i]);

String xuanxiang01=""+stxx01[i];map.put("stxx01", xuanxiang01);

String xuanxiang02=""+stxx02[i];map.put("stxx02", xuanxiang02);

String xuanxiang03=""+stxx03[i];map.put("stxx03", xuanxiang03);

String xuanxiang04=""+stxx04[i];map.put("stxx04", xuanxiang04);

String daan="答案:"+stda[i]; map.put("stda", daan);

String jiexi="解析:"+stjx[i];map.put("stjx", jiexi);

mylistItem.add(map); } }

整體圖片的顯示結(jié)果如圖3所示。

3.2 題目獲取

系統(tǒng)有3大模塊功能:①試題集模塊主要用于知識點的學(xué)習(xí);②單元測試模塊主要針對不同知識點進行復(fù)習(xí);③綜合測試模塊是多個知識點的綜合,便于學(xué)生對知識點自我測試。綜合測試通過從多個知識點中隨機抽取出20道題進行測試,根據(jù)每個知識點所占比例,設(shè)置隨機抽取的題目數(shù)量,并將獲取到的題目放至相應(yīng)數(shù)組中。下面給出隨機讀取知識點題目函數(shù):

private void getShitiji()

{int len=20; stbh=new String[len]; ztnf=new String[len]; ztth=new String[len];

zsd=new String[len]; sttm=new String[len]; fj=new String[len]; stxx01=new String[len];

stxx02=new String[len]; stxx03=new String[len]; stxx04=new String[len];

xxvalue=new int[len]; stda=new String[len]; stjx=new String[len];

String sqlStr="SELECT STBH,ZSD,STTM,F(xiàn)J,STXX01,STXX02,STXX03,STXX04,STDA,

STJX" +" FROM MSDB" +" WHERE ZSD='數(shù)據(jù)結(jié)構(gòu)與算法' ORDER BY RANDOM() limit 4";

Cursor cursor=db.rawQuery(sqlStr,null); int i=0;

while(cursor.moveToNext())

{

stbh[i]=cursor.getString(cursor.getColumnIndex("STBH"));

zsd[i]=cursor.getString(cursor.getColumnIndex("ZSD"));

sttm[i]=cursor.getString(cursor.getColumnIndex("STTM"));

fj[i]=cursor.getString(cursor.getColumnIndex("FJ"));

stxx01[i]=cursor.getString(cursor.getColumnIndex("STXX01"));

stxx02[i]=cursor.getString(cursor.getColumnIndex("STXX02"));

stxx03[i]=cursor.getString(cursor.getColumnIndex("STXX03"));

stxx04[i]=cursor.getString(cursor.getColumnIndex("STXX04"));

xxvalue[i]=0;

stda[i]=cursor.getString(cursor.getColumnIndex("STDA"));

stjx[i]=cursor.getString(cursor.getColumnIndex("STJX"));

i++;

//其它知識點程序與以上類似;

}}

3.3 選擇題布局實現(xiàn)

本系統(tǒng)是手機操作端,主要針對計算機等級考試中的選擇題,頁面設(shè)計及布局相當重要,需要制作一個美觀又方便學(xué)生操作的界面。在APP中,幾乎每個界面就是一個Activity,都要做好相應(yīng)的布局,如按鈕、文本框、列表框、選項按鈕等都是基本控件,要調(diào)整好這些控件位置并設(shè)置好顏色及背景搭配。圖3為系統(tǒng)實現(xiàn)的界面效果。

4 結(jié)語

本文通過Android平臺,設(shè)計并實現(xiàn)了計算機等級考試輔助系統(tǒng)。系統(tǒng)可以安裝在Android智能移動客戶端,通過該系統(tǒng),學(xué)生可隨時隨地對計算機相關(guān)知識進行復(fù)習(xí),以便備考,對提高計算機等級考試過級率有很大幫助,同時,也可幫助學(xué)生更好地規(guī)劃自己的時間。

本文設(shè)計的系統(tǒng)具有移動性、便捷性等特點,系統(tǒng)還可延伸到計算機軟件水平資格考試中,以及其它學(xué)科,如會計類、英語類、秘書類考試等。只要數(shù)據(jù)庫中的數(shù)據(jù)不同,就可設(shè)置將該框架應(yīng)用到其它類別的考試中。

參考文獻:

[1] 艾小芹.基于Android的英語學(xué)習(xí)系統(tǒng)設(shè)計與實現(xiàn)[J].電子設(shè)計工程,2016(17):73-76.

[2] 徐毅,田春燕.基于Android的移動英語學(xué)習(xí)平臺的研究與實現(xiàn)[J].中國教育信息化,2014(4):89-91.

[3] 陳瑞芳.基于Android智能手機考試系統(tǒng)的設(shè)計與實現(xiàn)[J].科技創(chuàng)新導(dǎo)報, 2014(34):50-51.

[4] 馬宏茹.基于Android平臺的中小學(xué)試題庫系統(tǒng)的建設(shè)[J].軟件工程師,2015(18):24-25.

[5] 李剛.瘋狂Android講義 [M].第3版.北京:電子工業(yè)出版社,2015.

[6] 左軍.Android程序設(shè)計經(jīng)典教程[M].北京:清華大學(xué)出版社,2015.

[7] 陳麗丹,梁明杰.課程試題庫APP應(yīng)用程序的設(shè)計[J].電氣電子教學(xué)學(xué)報,2016(8):79-81.

[8] 程雯雯.基于Android平臺的網(wǎng)絡(luò)電視互動界面整體設(shè)計與實現(xiàn)[D].北京:北京工業(yè)大學(xué),2015.

[9] 方家勝.大學(xué)生課堂使用手機問題調(diào)查與引導(dǎo)路徑——以南京某高校為例[J].北京城市學(xué)院學(xué)報,2014(3):104-110.

(責(zé)任編輯:杜能鋼)

猜你喜歡
Android系統(tǒng)移動學(xué)習(xí)
Android系統(tǒng)上的移動互聯(lián)網(wǎng)集成平臺開發(fā)機制
智能手機APP支持下的大學(xué)英語聽力教學(xué)