




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第一次實(shí)驗(yàn)Android界面設(shè)計(jì)一.實(shí)驗(yàn)?zāi)康募皩?shí)驗(yàn)環(huán)境1.實(shí)驗(yàn)?zāi)康?)掌握SQLiteOpenHelper類結(jié)構(gòu)2)掌握基于SQLite數(shù)據(jù)庫的應(yīng)用開發(fā)過程3)掌握ContentProvider發(fā)布數(shù)據(jù)的方法4)掌握ContentResolver獲取數(shù)據(jù)的方法2.實(shí)驗(yàn)環(huán)境系統(tǒng)開發(fā)平AndroidStudio3.0系統(tǒng)開發(fā)平臺:Android7.1運(yùn)行平臺:Windows10x64運(yùn)行環(huán)境:Microsoft.NETFrameworkSDK2.0二.實(shí)驗(yàn)教材、組織方式、實(shí)驗(yàn)內(nèi)容實(shí)驗(yàn)教材:Andorid開發(fā)與應(yīng)用組織方式:個人獨(dú)立完成2.實(shí)驗(yàn)內(nèi)容:實(shí)現(xiàn)基于SQLite數(shù)據(jù)庫的通信錄應(yīng)用,通過單擊增加圖標(biāo)打開添加通信錄界面,通過單擊通信錄中的各條信息可刪除選中項(xiàng)。三.方案設(shè)計(jì)Android系統(tǒng)中集成了SQLite數(shù)據(jù)庫,并且為數(shù)據(jù)庫的操作提供了相關(guān)的類和方法,便于沒有數(shù)據(jù)庫開發(fā)經(jīng)驗(yàn)的開發(fā)者編寫程序。另外,Android平臺中利用ContentProvider機(jī)制來實(shí)現(xiàn)跨應(yīng)用程序數(shù)據(jù)共享。一個應(yīng)用程序可以通過ContentProvider來發(fā)布自己的數(shù)據(jù),其他的應(yīng)用程序可以通過ContentResolver來獲取共享數(shù)據(jù)。
壯世1陳銳電話四?運(yùn)行結(jié)果附曲裁MlQ曲裁MlQ5:31!@1通信錄:段唐友陳友
五.總結(jié)通過這次實(shí)驗(yàn)掌握了SQLiteOpenHelper類結(jié)構(gòu),掌握了基于SQLite數(shù)據(jù)庫的應(yīng)用開發(fā)過程以及ContentProvider發(fā)布數(shù)據(jù)的方法和掌握ContentResolver獲取數(shù)據(jù)的方法。六.附錄:源代碼主布局文件activity_main.xml:<LinearLayoutxmlns:android="/apk/res/android"<TextViewandroid:id="@+id/title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text二"通信錄"/><ListViewandroid:id="@+id/listView"android:layout_width="wrap_content"android:layout_height="wrap_content"></ListView><Buttonandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:onClick="add"/></LinearLayout>添加聯(lián)系人布局文件addrelation.xml:<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text二"姓名"/><EditTextandroid:id="@+id/addName"android:layout_width="wrap_content"android:layout_height="wrap_content"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text二"電話"/><EditTextandroid:id="@+id/addTel"android:layout_width="wrap_content"android:layout_height="wrap_content"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text二"所屬組"/><Spinnerandroid:id="@+id/addGroup"android:layout_width="wrap_content"android:layout_height="wrap_content"android:entries="@array/test"></Spinner><Buttonandroid:id="@+id/save"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:text="保存"/></LinearLayout>主Activity文件MainActivity.java:importandroid.support.v7.app.ActionBarActivity;importandroid.app.AlertDialog;importandroid.app.Application;importandroid.content.DialogInterface;importandroid.content.Intent;importandroid.database.Cursor;importandroid.os.Bundle;importandroid.view.Menu;importandroid.view.MenuItem;importandroid.view.View;importandroid.widget.AdapterView;importandroid.widget.ListView;importandroid.widget.SimpleCursorAdapter;publicclassMainActivityextendsActionBarActivity{privateListViewlistView;protectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_mai);listView=(ListView)findViewById(R.id.listVie);//getRelationFromDB();}privatevoidgetRelationFromDB(){finalDatabaseHelperdbHelper=newDatabaseHelper(this);Cursorcursor=dbHelper.query();String[]from={"_id","name","tel","groupName"};int[]to={R.id._id,R.,R.id.tel,R.id.group};SimpleCursorAdapterscadapter=newSimpleCursorAdapter(this,;listView.setAdapter(scadapter);listView.setOnItemClickListener(newAdapterView.OnItemClickListener()publicvoidonItemClick(AdapterView<?>adapter,Viewview,intposition,longid){finallongtemp=id;AlertDialog.BuilderadBuilder=newAlertDialog.Builder(MainActivity.this);adBuilder.setMessage("確認(rèn)要刪除記錄嗎?").setPositiveButton("確認(rèn)",newDialogInterface.OnClickListener(){@OverridepublicvoidonClick(DialogInterfacedialog,intwhich){//TODOAuto-generatedmethodstubdbHelper.del((int)temp);Cursorcursor=dbHelper.query();String[]from={"_id","name","tel","groupName"};int[]to={R.id._id,R.,R.id.tel,R.id.group};SimpleCursorAdapterscadapter=newSimpleCursorAdapter(getApplicationContext(),R.layout.relationlistcursor,;MainActivity.this.listView.setAdapter(scadapter);}}).setNegativeButton("取消",newDialogInterface.OnClickListener(){@OverridepublicvoidonClick(DialogInterfacedialog,intwhich){
}});AlertDialogaleraDialog=adBuilder.create();aleraDialog.show();}});dbHelper.close();publicvoidadd(Viewview){Intentintent=newIntent(MainActivity.this,AddrelationActivity.class);startActivityForResult(intent,0x111);}protectedvoidonActivityResult(intrequestCode,intresultCode,Intentdata){super.onActivityResult(requestCode,resultCode,data);if(requestCode==0x111&&resultCode==0x111){getRelationFromDB();}}@OverridepublicbooleanonCreateOptionsMenu(Menumenu){//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.getMenuInflater().inflate(R.menu.main,menu);returntrue;}@OverridepublicbooleanonOptionsItemSelected(MenuItemitem){//Handleactionbaritemclickshere.Theactionbarwill//automaticallyhandleclicksontheHome/Upbutton,solong//asyouspecifyaparentactivityinAndroidMid=item.getItemId();if(id==R.id.action_setting){returntrue;}returnsuper.onOptionsItemSelected(item);}}添加聯(lián)系人AddrelationActivity.javaimportandroid.app.Activity;importandroid.app.AlertDialog;importandroid.content.ContentValues;importandroid.content.DialogInterface;importandroid.content.Intent;importandroid.os.Bundle;importandroid.view.View;importandroid.widget.EditText;importandroid.widget.Spinner;publicclassAddrelationActivityextendsActivity{privateEditTextaddName,addTel;privateSpinneraddGroup;protectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.addrelation);addName=(EditText)findViewById(R.id.addName);addTel=(EditText)findViewById(R.id.addTel);addGroup=(Spinner)findViewById(R.id.addGroup);}publicvoidsave(Viewview){finalContentValuesvalues=newContentValues();values.put("name",addName.getText().toString());values.put("tel",addTel.getText().toString());values.put("groupName",addG
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 遼寧省朝陽市朝陽縣柳城高中2025年全國高三模擬考試(六)生物試題含解析
- 洛陽科技職業(yè)學(xué)院《專業(yè)技能訓(xùn)練》2023-2024學(xué)年第二學(xué)期期末試卷
- 山東省棗莊市四十一中市級名校2024-2025學(xué)年初三一輪復(fù)習(xí)基礎(chǔ)知識檢測試題生物試題含解析
- 江蘇省鹽城市響水實(shí)驗(yàn)、一中學(xué)2024-2025學(xué)年初三下學(xué)期第四次月考試卷化學(xué)試題含解析
- 寧夏大學(xué)《傳統(tǒng)人居文化研究》2023-2024學(xué)年第二學(xué)期期末試卷
- 上海民航職業(yè)技術(shù)學(xué)院《工程數(shù)值分析及實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 樂安縣2025年三年級數(shù)學(xué)第二學(xué)期期末復(fù)習(xí)檢測試題含解析
- 山東陽谷縣達(dá)標(biāo)名校2024-2025學(xué)年初三一輪復(fù)習(xí)階段性考試(化學(xué)試題文)試題含解析
- 沈陽工程學(xué)院《商務(wù)英語視聽》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧省沈陽市沈河區(qū)第八十二中學(xué)2025屆下學(xué)期期中考初三試卷物理試題含解析
- CJJT191-2012 浮置板軌道技術(shù)規(guī)范
- 2024年同等學(xué)力申碩-同等學(xué)力(法學(xué))筆試參考題庫含答案
- 部編版二年級語文下冊第一單元大單元整體作業(yè)設(shè)計(jì)
- 黑臭水系治理工程監(jiān)理大綱
- 二年級下冊遞等式計(jì)算練習(xí)400題及答案
- 高三下學(xué)期綜評自我陳述報(bào)告
- 國際人權(quán)法與非洲人權(quán)體系的重要案例研究
- 國有土地使用權(quán)的評估與出讓管理
- 2023年標(biāo)準(zhǔn)化工程師考試真題模擬匯編(共402題)
- 中建懸挑卸料平臺專項(xiàng)施工方案
- 中建總工程師的職業(yè)基本素養(yǎng)
評論
0/150
提交評論