freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

本科畢業(yè)論文-基于android平臺(tái)的3g氣象軟件設(shè)計(jì)-預(yù)覽頁(yè)

 

【正文】 stalCode text 城市標(biāo)記 forecastDate integer 預(yù)報(bào)日期 condition text 當(dāng)前天氣情況 tempF integer 最高溫度 tempC integer 最低溫度 humidity text 當(dāng)前濕度 icon text 天氣圖標(biāo) windCondition text 風(fēng)向風(fēng)速情況 lastUpdateTime integer 最后一次更新時(shí)間 程序模塊設(shè)計(jì) 從功能需求上分析可以看出,整個(gè)應(yīng)用程序應(yīng)劃分為 4 個(gè)模塊,分別是程序啟動(dòng)、用戶界面、后臺(tái)服務(wù)和數(shù)據(jù)庫(kù)適配器,各模塊之間的關(guān)系如圖 42 所示。之所以這么實(shí)際,一方面可以避免因網(wǎng)絡(luò)通信不暢造成界面失去響應(yīng);另一方面,后臺(tái)服務(wù)可以及時(shí)更新數(shù)據(jù),以保證數(shù)據(jù)的準(zhǔn)確性。 Weather 工程源代碼的結(jié)構(gòu)如圖 所示。所有 在程序開發(fā)階段可以被調(diào)用的資源都保存在這些目錄中,具體每個(gè)資源文件的用途可以參考表 : 表 資源文件名稱與用途 資源目錄 文 件 說 明 anim 漸變透明度動(dòng)畫效果 畫面轉(zhuǎn)換位置移動(dòng)動(dòng)畫效果(從左至右) 畫面轉(zhuǎn)換位置移動(dòng)動(dòng)畫效果(從右至左) 畫面轉(zhuǎn)換位置移動(dòng)動(dòng)畫效果(從上至下) 畫面轉(zhuǎn)換位置移動(dòng)動(dòng)畫效果(從上至下) 畫面轉(zhuǎn)換位置移動(dòng)動(dòng)畫效果(從上至下) 畫面轉(zhuǎn)換位置移動(dòng)動(dòng)畫效果(從上至下) 畫面轉(zhuǎn)換位置移動(dòng)動(dòng)畫效果(從上至下) drawable 這個(gè)文件夾里是工程里所用的圖片,如有表示天氣狀況、數(shù)字等,此處不贅述。 在介紹 ForecastProvider 的 核 心 代 碼 前 , 首 先 了 解 一 下(當(dāng)前天氣信 息的類 )和 (未來天氣信息的類)。 //更新 頻率 private String city。 //天氣情況 private Integer tempF。 //天氣圖標(biāo) private String windCondition。 (2) 的部分代碼: public class ForecastEntity { private Integer id。 //最高溫度 private String icon。 在創(chuàng)建 ForecastProvider 時(shí),首先需要使用數(shù)據(jù)庫(kù) 、文件系統(tǒng)或網(wǎng)絡(luò)實(shí)現(xiàn)底層存儲(chǔ)功能,這里我們采用數(shù)據(jù)庫(kù)建立了數(shù)據(jù)庫(kù)設(shè)計(jì)中的兩張表,從而實(shí)現(xiàn)了底層存儲(chǔ)功能。DatabaseHelper 在建立數(shù)據(jù)庫(kù)時(shí),同時(shí)建立了兩個(gè)數(shù)據(jù)庫(kù)表 weather_widget和 weather_forcast,并對(duì)保存配置信息的表進(jìn)行了初始化。 } public void onCreate(SQLiteDatabase db) { //創(chuàng)建 weather_widget表 public void onCreate(SQLiteDatabase db) { //創(chuàng)建 weather_widget表 (CREATE TABLE + TABLE_WIDGET + ( ......)。 ContentProvider 使用的 URI 語(yǔ) 法 結(jié) 構(gòu)URI進(jìn)行設(shè)置。 //指操作單條數(shù)據(jù) public static final String CONTENT_ITEM_TYPE = 。 SQLiteDatabase db = ()。 //通過一個(gè) switch語(yǔ)句,完成了通過 uri種類的辨別來生成不通的SQLiteQueryBuilder對(duì)象的工作。 (TABLE_WIDGET)。 //為該 SQLiteQueryBuilder對(duì)象設(shè)置它查詢工作將針對(duì)的表 (TABLE_FORECAST)。 }case FORECASTS: { (TABLE_FORECAST)。 ( + = + forecastId)。 添加功能: public Uri insert(Uri uri, ContentValues values) {} 刪除功能: public int delete(Uri uri, String selection, String[] selectionArgs) {} 更新功能: public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) {} (5) 類型匹配:增刪改查通過 switch 判斷,進(jìn)行不同的操作,因而還需要對(duì)關(guān)鍵字進(jìn)行類型匹配。 case FORECASTS: return 。 private static final int WIDGETS = 101。 private static final int FORECASTS_ID = 202。 (AUTHORITY, forecasts, FORECASTS)。 獲取天氣數(shù)據(jù) 天氣數(shù)據(jù)的獲取天氣數(shù)據(jù)分為以下三個(gè)步驟: (1) 從 Google提供的 Web Service中獲取的天氣數(shù)據(jù),數(shù)據(jù)的獲取地址是: 下: public static WidgetEntity queryWebservice(String postalCode) throws ForecastParseException { //編碼出錯(cuò) if (postalCode == null) { throw new ForecastParseException(can not covert to entity)。 //創(chuàng)建 Http Get請(qǐng)求 HttpGet request = new HttpGet((WEBSERVICE_URL, postalCode))。 第五章 程序開發(fā) StatusLine status = ()。 } catch (IOException e) { throw new ForecastParseException(Problem calling forecast API, e)。核心代碼如下: //返回類型為 WidgetEntity private static WidgetEntity parseResponse(Reader responseReader) throws ForecastParseException { ...... try { //使用工廠類 XmlPullParserFactory來創(chuàng)建解析器 XmlPullParser XmlPullParserFactory factory = ()。 int eventType = ()。 } else if ((tagName)) { dealWithCurrentConditions(tagName, widgetEntity, xpp)。 } (3) 將 解 析 好 的 數(shù) 據(jù) 存 儲(chǔ) 到 SQLite 數(shù) 據(jù) 庫(kù) 中 。 (forecastUri, null, null)。 ...... (forecastUri, values)。 AppWidget一啟動(dòng)就會(huì)啟動(dòng) ForcastTimeService這個(gè)后臺(tái)服務(wù),此服務(wù)設(shè)置了每隔 20秒刷新一次時(shí)間,“顯示頁(yè)面”通過這個(gè)后臺(tái)服務(wù)獲取系統(tǒng)時(shí)間從而顯示。 service android:name=ForecastService/service service android:name=ForecastTimeService/service 用戶界面 在用戶界面設(shè)計(jì)上,采用了 AppWidget框架結(jié)構(gòu),提供直觀的交互操作。創(chuàng)建 AppWidget需要以下四個(gè)步驟: (1) 定義 Widget布局文件,此文件是 res/layout/,采用AbsoluteLayout方式進(jìn)行布局 需要注意的是在這個(gè)文件中所使用的組件必須是 RemoteViews所支持的。 // 獲取需要更新的桌面小控件 (appWidgetIds)。代碼如下: 第五章 程序開發(fā) !receiver字段定義的是 AppWidgetProvider類 — receiver android:icon=drawable/weather android:label=string/app_name android:name=ForecastWidget !intentfilter說明 appWidget可以接受下面的廣播事件 — intentfilter action android:name= /action /intentfilter !metadata指明屬性文件 — metadata android:name= android:resource=xml/weatherwidget/metadata /receiver 設(shè)置頁(yè)面 ConfigureActivity ConfigureActivity繼承 Activity并且實(shí)現(xiàn)了 ,AppWidget第一次啟動(dòng)之前會(huì)先運(yùn)行 ConfigureActivity,會(huì)出現(xiàn)設(shè)置頁(yè)面用 戶進(jìn)行設(shè)置,點(diǎn)擊保存按鈕就會(huì)將設(shè)置好的參數(shù)會(huì)存儲(chǔ)到 SQLite中 。 (, widgetId)。 (, 1)。 // 啟動(dòng) 獲取天氣預(yù)報(bào)信息的 后臺(tái)服務(wù) startService(new Intent(this, ))。 } } ConfigureActivity的布局文件是 res/layout/,采用了LinearLayout的布局方式。在此工程中,仍然使用 setContentView( )設(shè)置布局,這樣做的好處是可以在界面中設(shè)置更為復(fù)雜的顯示元素。 ...... //獲取游標(biāo),訪問數(shù)據(jù)庫(kù) Cursor forecastCursor = managedQuery(forecastUri, , null, null, null)。 TextView day = (TextView) ()。 ((1))。/ + (3) + 161。 動(dòng)態(tài)特效 動(dòng)態(tài)特效是指如果天氣為多云或雨天時(shí),就會(huì)在 云或下落的雨滴;如果天氣為晴時(shí),就會(huì)在 第五章 程序開發(fā) 的太陽(yáng)圖標(biāo)等。代碼如下所示: !—“ 下落雨滴”動(dòng)態(tài)效果 — ?xml version= encoding=utf8? set xmlns:android= !—Y不變, X從 100到 420,重復(fù)無(wú)限次 — translate android:repeatCount=1 android:fromXDelta=100 android:toXDelta=420 android:fromYDelta=50 android:toYDelta=50 android:duration=15000 / /set 第六章 系統(tǒng)測(cè)試 第六章 系統(tǒng)測(cè)試 至此已經(jīng)完成了 tyweather工程的代碼編寫工作,在這一章節(jié)對(duì) tyweather工程進(jìn)行測(cè)試,步驟及結(jié)果如下: (1) 啟動(dòng) Android虛擬機(jī) 在工程名 tyweather上點(diǎn)右鍵,然后選擇“ Run As”,然后選擇“ Android Application”。 如下圖所示: (3)設(shè)置好后就進(jìn)入顯示頁(yè)面,顯示頁(yè)面通過文字和圖片顯示當(dāng)前的天氣情況,包括日期、時(shí)間、城市、最高溫度、最低溫度、當(dāng)前溫度等。由于對(duì) JAVA濃厚的興趣引發(fā)了我對(duì) Android 的好奇心,從一開始什么都不懂一直摸索著運(yùn)用了很多高級(jí)技術(shù)完成了這 個(gè)軟件。 參考文獻(xiàn) 參考文獻(xiàn) [1] 靳巖,姚尚朗 . Google Android 開發(fā)入門與實(shí)戰(zhàn) .人民郵電出版社 [2] 景保玉 .2022中國(guó)移動(dòng)應(yīng)用開發(fā)現(xiàn)狀與趨勢(shì)大調(diào)查, 2022年 01月 12日 [3] Michael . 輕松搞定 XML 林嘉勝譯 2022年 01月 08日 [4](英) Herbert Schildt Java 參考大全( J2SE 5 Edition), 清華大學(xué)出版社 [5](美) 鮑格斯坦 ( Bergsten, H.)著, 林琪 , 朱濤江 譯 .JSP 設(shè)計(jì)(第三版) / O’ Reilly Java 系列 [M].北京:中國(guó)電力出版社, 2022 年 12 月 . [6] 王向輝,張國(guó)印,沈潔 .Android 應(yīng)用程序開發(fā) .清華大學(xué)出版社, 2022 年 3月 致謝 致 謝 本課題的設(shè)計(jì)和論文撰寫過程中,我的指導(dǎo)老師高輝、程浩老師給于了極大的幫助,
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1