版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
安卓記事本程序源代碼(AndroidNotepadprogramsourcecode)1、MainActivity01.packagecn.dccssq;02。03.importandroid.app.listactivity;04.importent;05.importandroid.database.cursor;06.importandroid.os.bundle;07.importandroid.util.log;08.importandroid.view.menu;09.importandroid.view.menuitem;10.importandroid.view.view;11.importandroid.widget.listadapter;12.importandroid.widget.listview;13.importandroid.widget.simplecursoradapter;14。15.publicListActivity16。17。私有靜態(tài)最后insert_id=18。19。私有靜態(tài)最后delete_id=menu.first+20。21。私有靜態(tài)最后activity_create=22。23。私有靜態(tài)最后activity_edit=24。25。私人diarydbadapter26。27。私人光標光標;28。/**的時候調用首次創(chuàng)建。*/29。@Override30。publicvoidonCreate(Bundlesavedinstancestate){31。超級onCreate(savedinstancestate);32。setContentView(r.layout。主);33。34。diarydbdiarydbadapter(本35。diarydb。open();36。37。}。39。showlistview(){private40。diarydbgetallnotes(42。字符串[]=新的字符串[]{diarydbadapter。key_title,diarydbadapterkey_body};43。int[]=新的int[]{r.id.text1,r.id.created};44。45。listadapterCursorAdapter=新simplecursoradapter(這r.layout。diary_row,光標,到);46。setlistadapter(CursorAdapter);47。}48。49。@Otectedvoidonlistitemclick(ListView視圖V,L,int的位置,長的ID){51。//待辦事項自動生成方法存根52onlistitemclick(L,V,地位,身份53。C=光標光標;C。(位置);55(這activitydiary。類);56。意圖。putExtra(diarydbadapter.key_rowid,ID);57。意圖。putExtra(diarydbadapter.key_title,c.getstring(C58。。getcolumnindexorthrow(diarydbadapter。key_title)));59。意圖。putExtra(diarydbadapter.key_body,c.getstring(C60。。getcolumnindexorthrow(diarydbadapter。key_body)));61。startActivityForResult(意圖,activity_edit);62。}。65。protectedvoidonActivityResult(int,intrequestCode,ResultCode,意圖數(shù)據(jù)){66。//待辦事項自動生成方法存根67。超。onActivityResult(requestCode,ResultCode,數(shù)據(jù));68。showlistview();69。}70。71。@Override72。公共布爾onCreateOptionsMenu(菜單){73。//待辦事項自動生成方法存根74。超級onCreateOptionsMenu(菜單);75。菜單添加(0,0,insert_id,menu_insertR.string。);76。菜單添加(0,0,delete_id,menu_deleteR.string。);77。返回true;78。}79。80。@Override81。公共布爾onmenuitemselected(intfeatureid,菜單項){82。//待辦事項自動生成方法存根83。開關(項目。getitemid()){84。案例insert_id:85。日志。我(“插入”,字符串值(insert_id));86。creatediary();87。返回true;88。案例delete_id:89。日志。我(“delete_id:”字符串表示形式。(getlistview()。getselecteditemid()));90。diarydb。deletediary(getlistview()。getselecteditemid());91。showlistview();92。返回true;。}onmenuitemselected(featureid,項95。}。97。creatediary(){private98。99。意圖意圖=新intent();100setClass(這activitydiary。類);101。startActivityForResult(意圖,activity_create);102。}103。}2activitydiary01.package02。03.importandroid.app.activity;04.importent;05.importandroid.os.bundle;06.importandroid.util.log;07.importandroid.view.view;08.importandroid.widget.button;09.importandroid.widget.edittext;10。11.public類activitydiary12。13。//標題編輯14。編輯titletxt;15。//體編輯16。EditTextbodyTxt;17。//保存按鈕18。全選按鈕;19。//行ID20。長的rowid;21。私人diarydbadapterdiarydb;22。23。@OtectedvoidonCreate(Bundlesavedinstancestate){25。//待辦事項自動生成方法存根26。超級onCreate(savedinstancestate);27。setContentView(r.layout。記事本);28。29。//初始化diarydbadapter。30。diarydbdiarydbadapter(本31.//getthescreencontroltitletxt=(edittext)findviewbyid(r.id.title);bodytxt=(edittext)findviewbyid(r.id.body_text);btn=(button)findviewbyid(r.id.button);rowid=37.//getdatafromthefrontpagebundlebundle=getintent().getextras40.if(bundle!=null){log.i("bottom",bundle.tostring43.//seendatatwopagestringtitle=bundle.getstring(diarydbadapter.keytitle);stringbody=bundle.getstring(diarydbadapter.keybody);rowid=bundle.getlong(diarydbadapter.key_rowid);if(title!==null)49.{50.titletxt.settext(title);51.}52.if(body!==null)53.{54.bodytxt.settext(body);55.}56.57.58.btn.setonclicklistener(newview.onclicklistener()59.publicvoidonclick(viewarg0){//todoautogeneratedmethodstubstringtitle=titletxt.gettext().tostring();stringbody=bodytxt.gettext().tostring();if(checkinput(title,body)){diarydb.open();if(rowid!=null){diarydb.updatediary(rowid,title,body);}else{diarydb.creatediary(title,body);70.}71.diarydb.close();72.theintentmintent=newintent();setresult(result_ok,mintent);75.finish();77.}78.}79.});80.}81.82./***validatetheinput.*@paramtitle*@parambody*@87.*/88.publicbooleancheckinput(stringtitle,stringbody){89.if(null==title||title.trim().length()==0){titletxt.seterror("pleaseinputthetitle!");returnfalse;93.}94.if(null==body||body.trim().length()==0){bodytxt.seterror(“請輸入內容97。返回false;98。}99。返回1001013、diarydbadapterDB操作類,提供了兩種增刪查改的功能代碼01.packagecn.dccssq;02。03.importjava.util.calendar;04。05.importandroid.content.contentvalues;06.importandroid.content.context;07.importandroid.database.cursor;08.importandroid.database.sqlexception;09.importandroid.database.sqlite.sqlitedatabase;10.importandroid.database.sqlite.sqliteexception;11。12.public類diarydbadapter{13。publicstaticfinalStringkey_title=“標題”;14。publicstaticfinalStringkey_body=“身體”;15。publicstaticfinalStringkey_rowid=“_id”;16。public17。staticfinalStringkey_created=“創(chuàng)造”;18。私人databasehelperdatabasehelper;19。20。私有上下文上下文;。22。私人SQLiteDatabasesqliteDatabase;23。24。公共diarydbadapter(語境){25。this.context=語境;26。}27。28。/**29。*打開數(shù)據(jù)庫30。*/31。open(){publicvoid32。databasehelper=新databasehelper(背景);33。34。嘗試。{。=databasehelpergetwritabledatabase()SQLite37。}catch(sqliteexceptione){38。=databasehelpergetreadabledatabase()SQLite39。}40。}41。42。/**43。*關閉數(shù)據(jù)庫44。*/45。公共無效()46。{47。SQLite數(shù)據(jù)庫。();48。}49。50。/**51。*插入數(shù)據(jù)52。*@param53。*@param54。*歸55。*/56。公共長creatediary(字符串名稱,柱體){57。58。內容內容=新contentvalues();59。內容。把(key_title,標題);60。內容。把(key_body,體);61。日歷日歷日歷getinstance()=;62。創(chuàng)造=日歷字符串。得到(日歷年)+“/”63。+日歷。獲?。ㄈ諝v月)+/“/”64。+日歷。得到(日歷。day_of_month)+”65。+日歷。得到(日歷。hour_of_day)+“:”66。+日歷。獲?。ㄈ諝v分鐘);67。內容。把(key_created,創(chuàng)建68。。返回的SQLite數(shù)據(jù)庫,插入(databasehelper.databse_table,null,內容);70。}71。72。/**73。*刪除記錄74。*@param75。*歸76。*/77。公共布爾deletediary(長78。79。字符串wherestring=key_rowid+“=”+rowid;80。返回的SQLite數(shù)據(jù)庫,刪除(databasehelper.databse_table,wherestring,null)>0;81。}82。83。/**84。*獲取所有記錄*歸86。*/87。公共getallnotes()光標88。{89。字符串[]SearchResult={key_rowid,key_title,key_body,key_created};90。返回的SQLite數(shù)據(jù)庫,查詢(databasehelper.databse_tableSearchResult,空,空,空,空,空,);91。}92。93。/**94。*95。*@paramrowid96。*歸97。*@拋出98。*/99。公共光標getdiary(長rowid)拋出SQLException{100。101。字符串[]SearchResult={key_rowid,key_title,key_body,key_created};102。字符串wherestring=key_rowid+“=”+rowid;103。104。光標mcursor=SQLite數(shù)據(jù)庫,查詢(真的,databasehelper.databse_tableSearchResult,wherestring,空,空,空,空,空的);105。如果(mcursor!=NULL){106。mcursor。movetofirst();107108。返回109110。111。公共布爾updatediary(長的rowid,字符串標題,柱體){112。113。內容價值=新的contentvalues();114。值。把(key_rowid,標題);115。值。把(key_body,體);116。117。日歷日歷日歷getinstance()=;118。創(chuàng)造=日歷字符串。得到(日歷年)+“/”119。+日歷。獲?。ㄈ諝v月)+/“/”120(day_of_month)+”(hour_of_day)+“:”122(日歷分鐘);123。值。把(key_created,創(chuàng)建);124。字符串wherestring=key_rowid+“=”+rowid;125。126。返回的SQLite數(shù)據(jù)庫,更新(databasehelper.databse_table,價值觀,wherestring,null)>0;127。}128。129。公共無效xinjiandiary(字符串名稱,柱體130。131。日歷日歷=日歷。getinstance();(日歷)+“/”133(日歷月)+/“/”134(day_of_month)+”(hour_of_day)+“:”136。+日歷。獲?。ㄈ諝v分鐘);137。138。字符串insertsql=“插入”+databasehelper.databse_table139。+“(”+key_rowid+“,”+key_title+“,”+key_body+“,”+key_created+“)”140。+值(?,?,?“?”;141。對象[]args={零},標題,主體,創(chuàng)造;142SQLiteexecsql(insertsql,args);143144。145。公共無效bianjidiary(長的rowid,字符串標題,柱體){146。日歷日歷日歷getinstance()147(日歷)+“/”148(日歷月)+/“/”149(day_of_month)+”(hour_of_day)+“:”151。+日歷。獲?。ㄈ諝v分鐘);152。153。字符串updatesql=“更新”+databasehelper.databse_table154。+“”+key_title+=?,“+key_body+=?,“+key_created+=?”155。+“”+key_rowid+=?”;156args={標題,主體,創(chuàng)建,rowid157SQLiteexecsql(updatesql,args);158159。160。公共無效shanchudiary(長161。字符串deletesql=“刪除”+databasehelper.databse_table+“”+key_rowid+=?”;162。對象[]args={rowid};163SQLiteexecsql(deletesql,args);164165。166。公共qudeallnotes()光標167。{168。字符串searchsql=“選擇_id,標題,主體,創(chuàng)造了“+databasehelper.databse_table;169。返回SQLiterawquery(searchsql,null);1701714、databasehelper01.packagecn.dccssq;02。importandroid.content.context;importandroid.database.sqlite.sqlitedatabase;05.importandroid.database.sqlite.sqliteopenhelper;06。07.public類databasehelper擴展SQLiteOpenHelper{08。09。私人最終靜態(tài)字符串databse_name=“記事本”;10。私人最終靜態(tài)變量database_version=1;11。公共最終靜態(tài)字符串databse_table=“日記”;12。13。私人最終靜態(tài)字符串database_create=“創(chuàng)建表”+databse_table+”(_id整型主鍵遞增,”14。+“標題文本不為空,正文文本不為空,創(chuàng)建的文本不為空”;15。公共databasehelper(語境){16。超(上下文,databse_name,null,database_version);17。}18。19。@Override20。publicvoidonCreate(SQLite數(shù)據(jù)庫DB){21。分貝。execsql(database_create);22。}23。24。@Override25。publicvoidonupgrade(SQLite數(shù)據(jù)庫DB,int,intarg1,arg2){26。分貝。execsql(“如果表下降存在“+databse_table);27。onCreate(dB);28。}29。30。}5、main.xml01<<xmlversion=“1”encoding=“utf-8”?>02。<LinearLayoutxmlns:Android=“/apk/res/android”03。Android:方向=垂直04。安卓:layout_width=“fill_parent”05。安卓:layout_height=“fill_parent”06。>07。<ListView08。Android:id=“09。安卓:layout_width=“wrap_content”10。安卓:layout_height=“wrap_content”/>11。<TextView12。Android:id“=”:“空”13。安卓:layout_width=“wrap_content”14。安卓:layout_height=“wrap_content”15。安卓:文本=“您還沒有開始寫日記呢!點擊下邊的菜單按鈕開始寫日記吧:)”/>16。</元素>6、diary_row.xml01<<xmlversion=“1”encoding=“utf-8”?>02。<相對布局03。android:id“=id/行”04。xmlns:Android=“/apk/res/android”05。安卓:layout_width=“fill_parent”06。安卓:layout_height=“fill_parent”>07<<TextView。08。安卓:ID=“”+“身份證”09。安卓:layout_width=“wrap_content”10。安卓:layout_height=“30px”11。安卓:最大=“200dip”12。安卓:文字大小=“22sp”13。安卓:layout_margintop=“10dip”14。安卓:文本=“第一組第一項”/>15<<TextView。16。android:id“=id/創(chuàng)建”17。安卓:layout_width=“wrap_content”18。安卓:layout_height=“35px”19。安卓:layout_alignparentright=“true”20。安卓:layout_marginleft=“10dip”21。安卓:layout_margintop=“10dip”22。安卓:文本=“1999123”/>23。</RelativeLayout>7、notepadxml01<<XML版本=“1。0”encoding=“utf-8”?>02。<LinearLayoutxmlns:Android=“/apk/res/android”03。Android:方向=垂直04。安卓:layout_width=“fill_parent”05。安卓:layout_height=“fill_parent”06。>07<<TextView。08。安卓:文本=“@字符串/notepad_title”09。安卓:layout_width=“fill_parent”10。安卓:layout_height=“wrap_content”></TextView>11。<編輯12。android:id“=”13。安卓:layout_width=“fill_parent”14。安卓:layout_height=“wrap_content”></編輯>15<<Text
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療廢物管理制度及規(guī)范
- 《汽車路演執(zhí)行手冊》課件
- 智能醫(yī)療設備技術研發(fā)合同
- 車輛定位管理服務合同
- 智能城市垃圾處理管理系統(tǒng)開發(fā)合同
- 房屋租賃合同糾紛受理通知書
- 智能客戶服務培訓機構管理系統(tǒng)開發(fā)合同
- 2025年湘教版選修4化學下冊月考試卷
- 第二章鄉(xiāng)村和城鎮(zhèn) 說課稿2023-2024學年高中地理人教版(2019)必修二
- 2025年青島版六三制新高二語文上冊月考試卷
- 礦權收儲方案
- 2022-2023學年重慶市渝北區(qū)人教PEP版五年級上冊期末英語試卷
- 安徽省合肥市廬江縣2022-2023學年八年級上學期期末物理試卷(含答案)
- 造價年度工作總結
- 護理人員應急預案培訓課件:居家病人護理與應急服務
- 液壓與氣動傳動CAI第1章
- 廣告?zhèn)髅叫袠I(yè)操作人員安全培訓
- ICU呼吸系統(tǒng)護理的專業(yè)技巧與注意事項
- 藝術類院校加強藝術法教育的思考
- 銀行商會戰(zhàn)略合作協(xié)議書
- 2025年日歷表帶農(nóng)歷【陰歷】完美打印版
評論
0/150
提交評論