《安卓计算器开发实验报告.docx》由会员分享,可在线阅读,更多相关《安卓计算器开发实验报告.docx(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、安卓计算器开发实验报告上海电力学院 嵌入式 W S 应用开发 试验 报告试验名称:运用 Anroid Developr DK 开发应用程序 专业: 姓名: 班级:学号: 一、 作品得运行环境及安卓 SK 基础操作SDK A droi eve r oper 就是一款在 windos 系统上运行得针对 Andod 应用开发得谷歌官方软件(须要 JAA 环境支持). 1、 导入工程 2、 建立虚拟机 在运行虚拟机就是为保证机器得顺畅运行建议选择辨别率较低得虚拟机,但就是其AM 最好设为 512,因为部分程序假如调用资源过大会导致虚拟机无法运行。3、 虚拟机 界面二、 作品介绍 我得应用就是一个计算器
2、。能实现包括小数得加减乘除运算,结果过大会自动用科学记数法表示,另外还有退格跟清屏功能键。三、 编程以及运行调试 (一)、在 MDestop 主界面中添加应用图标 、 首先在我得桌面上添加您应用得图标以及文字,双击图标后就可以瞧见对应得代码,可干脆在代码中进行修改图片文字得大小颜色等等.以下就是对应图像图标得代码图片可以在左侧得选 项中自行进行选择;也可以添加自己得图片, 只要将图片放到对应得 文件夹之下在刷新就可 以,但不建议放辨别率 过高图片可能会出现超 出界面得等错误。(二)、在 reslayut 书目下新建、xml 文件,由于计算器得按钮许多,要在 xm界面中添加排版: xl 代码首末
3、得/Absolueaout格式较为自由可以直接在界面中拖动图标位置以及修改大小,而其她 lyut 则更会自动排列,各有优劣。(三)、在 srweibo、et、ui 书目下新建、ava 文件,计算器得按钮算法等都在此实现。(三)、声明 工程名 1、在应用中有三处须要声明,首先就是在 AndodMnist、m 、然后就是在ManAtivity、av四、 代码展示 (一)、xm界面代码?ml version= 1 、 0 eing= f-8 ?> LierLaout xmns:android andid:laou_idth=fill_ ent adrid:lutg= i l_parent an
4、rod:rieton er i al TbleLau ndr:id= id/tab eL y 1 adoid:layot_wth= m t h_ re android:lyot_hegt=wrap_c ntent aoid:olapseCoumns 4 > TabeR anroi:id= d/ le ow t android:ayout_width= fill_ arent noid:layot_eit=fill arent > ditx andro:id= i /et ndroi:layout_wdthf ll_ a n andro:layouteigh= f l pare t
5、ndrod:ly_span=4 androi:focusabe=fals andri:gvy=r ght aroid:inputye=t xt androd:igeLietrue </EdtTex </alRw <bleow anroi:d= +id ta leRow adroid:lyout_width= f ll_pa ent android:layo_eight=f ll_parent > ttn nroid:id id/ t_7 dro:layout_idth= 80px ndro:layout_heiht=8 px android:text=7 /> B
6、utto andrid:id=+ d/bt 8 andrid:you_ith=80 x anroid:ou_hight=80px andrid:text=8 / Bton ndroi:i=+id/ 9 andod:ayut_wid=1px anoid:layut_height=80px anrid:t= / <Button droid:d= +i /b b ckandroid:layut_with8 px droid:layout_eight=80px andrid:et= ba / </abeRw TleRo adri:= id t Row2 adid:laot_width=f
7、ll_parent andro:lo_heig=fil _ rent Buton adrod:id= d/bt_ anroid:layou_wdth= 0p droid:lyou_heg= 80p androd:txt=4 /> <Button andoi:d+id/ t_5 anri:layout_widt=80 x adroi:yut_heit= 80 x ndrd:t=5 > Butn adrid:d= +id/bt_6 ndr:lautwith=8 x android:ayout_height 80px andrd:tx6 /> <But rid:id=+
8、id bt_ ivide adrd:laout_wdh=8 px ndr:layot_hgh=80 adroid:tex / </alRow TablRow andoi:i=+ d/tabl R w3 android:ayouwdt=fi l_par n andrd:layout_eightfil _parent But android:i=+ d/bt_1 adroid:layout_idt=80p androi:layout_hih= px adroid:text=1 /> <tto droid:id=+i /bt aoid:layowidh= 0p android:ly
9、out_high= 0px andoid:ext=2 <Bttodd:i= i / t_ ndrid:laoutwih=8 px andro:layut_hgt= 80p android:text= / Butt nrod:id=+id/b _multi ly adroid:layout_with= 0p ndod:laot_heigh80px adroid:tx=* /> <ableow> Tableow ndroid:id= +id/ bleR w4 adroi:laotwidhfill_parent ndroi:lyot_heightfill_p rent Btt
10、on androi:i=+ d/bt_0 android:laout_wih=50px androi:lt_ight=80px ndoi:te0 / Btto andro:id=+i / t_poi t nrid:layout_width= 0px andod:layout_heiht= 0p ndoid:text= 、/ Buton adod:i= id/bt_ dd doid:layot_idth= 0px anroid:ayout_het=80px ndod:tet=+ / <utton droid:i d/ t_sub andoid:aytwidt px androi:laout
11、_hight= 80 adri:txt= / </ableo> <TabeRo nrod:id= +id/ta e ow4 anroid:ayout_wth= i _p ren andoid:laot_heigtfi l_ are t <Buo ndri:id= id/ t_equal ad:ayou_width= ll_ ar n ndroid:ayoutheigh= ill_ a nt nrd:laoutpan=3 ndroi:tex= /> Butto anod:=+i /b _cle r ai:laout_wdth=50 x ndroid:layout_e
12、ight80px drd:text= clea / /TaleRow </TableLayout </LinearLayot> (二)、ava功能代码packae weibo、tet、ui; mpot jva、til、rrayLt; impor aa、util、List; import ndoid、app、Acivity; mpot nrid、os、Bule; iport android、vew、Vw; mport ndroid、vi、Vi、OnikLseer; impt adid、widget、Butn; imprt adod、wdgt、EdText; prt andoi、
13、wiet、Toast; import eib、xadoa、ui、R; imort andrid、pp、Acivi; imprt andoid、cotn、Itet; impor adrid、ntn、m、PackageMaer; iport android、os、Bundle; pt android、view、KeyEven; iport adroid、ve、ie; import andri、view、iew、OnClickisene; mpot aroid、widget、Bttn; imo adod、wge、LisVew; irt 、zy、fipper、ppIfUl; import 、zsy、l
14、per、ppInfo; public clss fffctivity extns ctviy rivae Bttn bt_1;private But _2;;_tb nottuB etavir private uton bt4;5tb otu eavirp rivte utn bt_6;7_t nouB tvr rive Buton t_;privte uttn bt9; prive Butto bt_0;private uton btdd;减 / ;bu_t tuB etvip rvate Button t_mutip; / 乘rivate Button bt_diid; / 除;kcab_
15、tb nottuB etavirp 于等 / ;lauqe_tb nouB av pivate Butto t_oint; / 点除清 / ;raelc_tb t tavirp priate itText elay; 显示pivte Strg str_per = +; / 运算符pivate Strinufr str_slay = n SringBffr(); / 显示示显果结 / ;tluser_rts nirt eavr ;1mun ebuod tirp ;mun ebuod etavirp pive olen flag = true; / 小数点个数开关限制;制控关开符算运 / ;vid
16、_ ,lub ,us_b naeloob etarp Overridpuc id onrte(Bundl svedtaneSe) pe、onCete(svdInstaceta); setCoteVew(、layout、civity_fff); ;)_、di、R(deiVdif )nottuB( = tb ;)1_tb、di、R(dyBiVdnif )ottB( = 1_tbbt_2 (Buttn)fndewBId(R、id、b_2); bt3 = (But) fidwy(R、id、bt_3); t_4 = (uto)findVieByd(R、d、bt); bt5 = (Button) fndV
17、iewById(R、id、bt_5); b_6 = (Buton)fidViewById(、id、bt6); b_7 = (Button)fndVewyI(R、i、bt_); ;)8_b、i、(dyBweiVif )nottuB( = 8b_9 = (Butto)fidVewByI(R、d、b_9); t_add = (Button)findViewyI(、d、bt_add);)bu_b、i、R(IBwiVnif )nttuB( bus_tb;)ylpilum_tb、d、(IBweVdi )notuB( = lpitum_tb;)divid_tb、di、R(dIBinif )ntB( = ed
18、ivd_bt_bck = (Bton) finViwBy(R、id、t_back); bqual = (Button)findViewyId(R、d、b_eu); ;)tniop_tb、di、R(dyBeiVdif )nttuB( = tnip_tb t_clea = (uton) fndieById(R、id、bt_cear); et_py = (EdiTxt)finiewById(R、i、et);;)0(xeTes、yalp_t b_0、eOnClikLiene(e nClkitner()edirrevO ) wi(kcilno dv cilbup sr_dispay、appe();))(
19、gnirtot、yalpsd_r(xTtes、yalp_e ); )(renetskilCn en(rntsiLclCnOte、_tb verrde ) wiV(kilCn io cilbup ;)1(nppa、yalpsid_rs ;))(nrtSot、ypsd_rts(eTes、ylp_te ;) bt_2、eOnClicsteer(new nlickLstnr() Overre ) wiV(kcilCno dov ibup ;)2(dnepp、alsi_rs;))(gnrSo、yalsdts(tetes、y_te );)(reetsiLkcilCnO wen(renetikcltes、3
20、_t edirevO pblic vd onClick(Vie ) ;)3(depp、alpsd_rts e_play、setText(r_dislay、toSti(); ); )(entsLkcilCnO en(enetsikcilCntes、_tbdirrvO)v weV(kilCno diov cilup ;)4(neppa、yalpsd_s ;)(gnrtSot、yasi_rt(txTtes、lp_te ); )(renetsiLkcilCO wen(rentiLkclnOts、5_ Overriepublc oid oni(iew v) ;)5(dnepp、yalpsd_rs ;))
21、(nirtSot、alsid_ts(teTtes、yape ); b_、setOlikLstene(new OnClickLsten() eireO ubi vod onick(i v) strsplay、appen(6); etpla、etet(str_isl、tStrig(); ;) bt_、setCicListener(new Onickitene() rrevO)v weiV(kcC dov cilbup ;)(dnepa、yalpid_s etplay、setTex(t_iply、toSring(); ;) )(reetsiLkilnO wen(rentscilCnOes、8_tb
22、errvO)v wei(cino iov clbp ;)8(dneppa、yalsi_rs ;)(nitSo、ylpsid_rts(xeTtes、a_e);)(rntiLclCO wen(rentsiLkcilCntes、9_tbedirrevO)v eiV(kilCno di cbup strdisply、appnd(9); t_py、etText(str_dsplay、torig();); bt_point、stOnCikListen(ew Onlicksener() irevO)v weiV(cino diov cilup i (flag) str_sply、aped(、); ;elaf
23、 = af ;))(renetsiLciln wen(retsLkclCnOs、kab_b Overide)v eV(kclCno dov cilb )0 ! )(te、yalsi_rt( fi;)1 )(hgnl、yalpirt(tAraCeteed、yalpsid_rs et_lay、setText(str_dislay、totring()); );)(retsiLkclCnO wen(rnetsLkltes、da_tb drreO)v weiV(kno d ilbup ; = reprs )) = )(nirtot、yalsid_rs(!( fi num1 Double、rsDubl(t
24、r_dslay、toStrng();;)(reffBgnirtS wen = yapsd_r f (!(str_rult = nll);)tlusers(ebuoDsra、eluoD = 1mun;llun = tu_rt ;))1un(fOulav、gitS(xeTe、yalp_e ;eut = glf ;)t_sb、stOnClicisener(n OnickLtener() edirrevO)v weiV(kcilCno diov cilbu ;- = repo_r ) = )(gnirtot、alpsidrt(! bu_b!( fi num1 uble、parseubl(sr_dspl
25、y、toString(); ;))mun(fOeula、gnirtS(txetes、yalp_te;)(effuBgir w yapirts b_su u; else )) = )(nirtot、yapi_rt(!( girtSo、apsid_ts(elboDesrap、buoD =- 1u(); ;)(rfuBnirt en = lpsi_rt))lln = tluserts(!( i ;)tluer_rts(lbuoDesrap、elbuoD mun ;lun tuserrts tplay、seTet(Str、alueOf(num1));;rt = galf ); btmuliply、se
26、tOClikLitenr(ew Onlickistener() vrie )v weiV(kcCo dio cilbup ; = repo_rts )) = )(tSot、ylpd_rts(! lum_b!( f ;))(gnitSot、alpsidr(buDerp、ebuD 1mun ;)1mu(fOeulv、gnirtS(teTe、yalp_e ;)(reffBgnirtS wen = yalpi_rt ;eurt = lub ese f (!(strdispa、toSing() = )) m1 = Dubl、preDoule(st_di、toStig()); ;)(rffuBgi we
27、= yalpid_rts ))llu = luser_ts(!( ;)tluer_rts(elbuoDesrap、eboD = 1mun strresut null; ;)1mun(fOulav、gnirS(txTs、yalp_t ;eut = gal ;) )(retsLkc wen(entsiLkciCnOes、edividtb Ovrrie)v wei(kciln iov lup ; = reo_rts )) = )(irtSot、yapsi_rts(! d_b!( f num1 = obl、poul(str_display、totring();et_pay、setxt(Sng、vauf
28、(num1)); str_dsplay nw StigBufer();;eut = vi_ ele if (!(_islay、toStrig()= )) )0 = )(gnirtSo、ypsid_rts(ebDsra、elbuo( fi Tast、akText(ffActiit、this, ;)(ws、)GNL_HTNEL、tsaoT ,!0 为能不数除 e ;))(gntSot、yalsi_rts(elbuDesrap、ebuD / 1mun tr_pay new Sringufer(); if (!(str_resut = ul) num1 = Doule、aruble(t_rlt);;l
29、lun = tluser_rs ;)mun(fOeulv、nS(te、alp_te ;eurt af ); bt_lar、setOClickister(new OnlickListner() edrev)v iV(kcilCno dio cilbup ; = epo_rt str_dspla = ew SingBuffer(); st_rsut null; 0; num2 = 0;;eu = galf ;sa = bs_ b_l = fae;eslaf id_b ;)(txt、yalp_e ;)bt_equal、setnClickListene(nw nClickListeer() eirr
30、)v ei(ilCno diov clbup )+(aqe、repo_r( fi;))(gnirtot、yalpsd_rts(elbuoDesrp、elbuoD = mn ;)n + un((fOeulv、nirt = tlr_rts etplay、setTet(_reslt); ;)(reffBgirtS wn ylpsidrif (tr_pr、qls() ;))(girtSt、yalpsi_rts(ebuoDesrp、elbo 2mun;)2mu - 1mun(feulav、girtS = tluser_rts e_play、setText(st_esult); str_diplay =
31、new StgBuffer();))*(se、reports( fi;)(grtSo、alpst(elbusrap、elbuoD = mun ;))2mun mu(Oela、gnrt = tuser_rt ;)luser_rts(txTtes、yalp_t ;)(reffugnirtS wen = yalpsid_rts ))/(uqe、rpo_rts( fi ;)(nitSt、yalpsid_rts(elbuoDesrap、eluoD 2un if (!(num2 = 0)) ;)2 / mun((fOeulav、grtS = tluser_rts e_la、setText(str_rut); le Toast、makeText(ffAcviy、ths, ;)(whs、)GNLHTGNE、tsaT ,!0 为能不数除 s_dspl ne Stinguff(); ); 五、 试验小结 通过此次nroid 应用得开发,使我学会了许多在其她理论课上所无法学到得东西。所谓道可道,特别道,开发过程中得领悟难以用言语来形容;不过,调试过程中面对一大堆红叉叉得耐性与胜利运行后所获得得成就感将会成为我们人生中珍贵得财宝。
限制150内