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

正文內(nèi)容

基于android平臺(tái)的天氣軟件開發(fā)畢業(yè)論文-文庫吧資料

2025-01-22 13:00本頁面
  

【正文】 = 0。 FileOutputStream fos = new FileOutputStream(DATABASE)。 } // 創(chuàng)建目錄 ()。 File dir = new File(dbPath)。 // 數(shù)據(jù)庫路徑 private String dbName = panda_weather。 // 構(gòu)造函數(shù) public Database_Tools(Context context) { _context = context。經(jīng)過分析可以知道,對(duì)數(shù)據(jù)庫的操作主要包括數(shù)據(jù)庫的初始化、由城市名得到對(duì)應(yīng)的城市碼、設(shè)置默認(rèn)城市碼和得到默認(rèn)城市碼這樣四個(gè)操作。這里,看到的結(jié)果與插入的一致,表示數(shù)據(jù)庫創(chuàng)建成功了。 和 select * from city。數(shù)據(jù)庫名為 panda_weather ,創(chuàng)建的兩張表為 cities 和 city 。)。 String sql = INSERT INTO city(_id, code) values(1, 39。接下來要進(jìn)行的是創(chuàng)建 city 表,然后插入數(shù)據(jù),這里將默認(rèn)的城市設(shè)置為北京,城市碼是 101010100 。 } (insert ========= OK )。 } ()。 try { (sql, new String[] {new String((),UTF8), new String((), UTF8)})。 String sql = INSERT INTO cities(_id, code, city) values( + (i+1) + ,?,?)。 i++) { d1 = str[i][0]。 for (int i = 0。 String d1 = 。在上面已經(jīng)將要插入的數(shù)據(jù)存入到了一個(gè)二維數(shù)組中,在插入的時(shí)候考慮到亂碼問題,特別設(shè)置了編碼方式為 UTF8 編碼,然后逐條插入,代碼如下: class InsertListener implements OnClickListener { public void onClick(View v) { DatabaseHelper dbHelper = new DatabaseHelper(, panda_weather)。有了數(shù)據(jù)庫就該創(chuàng)建表了,語句如下:(create table cities(_id int, code varchar(10), city varchar(10))。 ()。針對(duì)不同的操作選用不同的方法,當(dāng)數(shù)據(jù)庫不存在的時(shí)候,直接創(chuàng)建這個(gè)數(shù)據(jù)庫。得到SQLiteOpenHelper 對(duì)象后就可以創(chuàng)建數(shù)據(jù)庫了。 } public DatabaseHelper(Context context, String name){ this(context, name, VERSION)。 public DatabaseHelper(Context context, String name, CursorFactory factory, int version) { super(context, name, factory, version)。 }這樣,就得到了一個(gè)包含著城市名和城市碼的二維數(shù)組,然后就是創(chuàng)建數(shù)據(jù)庫,創(chuàng)建表,將數(shù)據(jù)插入到表中。 str[i][1] = city[i]。 i 。所以接下來要將它們組合起來,得到一個(gè)二維數(shù)組,一個(gè)城市名對(duì)應(yīng)一個(gè)城市碼,共2564個(gè)城市,代碼如下: public static String[][] range(String[] city, String[] code){ String[][] str = new String[2564][2]。 } return null。 i = i + 1。 while(()){ String city = ()。 String[] it = new String[2564]。amp。經(jīng)過分析可以知道,應(yīng)該先將文件中的內(nèi)容讀入到內(nèi)存中,然后創(chuàng)建表,再把數(shù)據(jù)插入到表中。 數(shù)據(jù)庫實(shí)現(xiàn) 數(shù)據(jù)庫存儲(chǔ)在數(shù)據(jù)庫的設(shè)計(jì)中將數(shù)據(jù)內(nèi)容設(shè)計(jì)為兩張表:cities和city,cities用于存儲(chǔ)城市名和城市碼,city用于存儲(chǔ)默認(rèn)的城市碼。 } } return flag。 } catch (Exception e) { ()。 ()。 try { o = new FileOutputStream(fileName)。 boolean flag = false。在 中存放的是所有的城市名,城市名之間用“,”分隔,之間也用“,”隔開,在存放的時(shí)候,將城市名和城市碼的次序一一對(duì)應(yīng)。 } catch (Exception e) { ()。 } File file2 = new File()。 g++。 i++) { (cityCode[j][i] + ,)。 j++) { for (int i = 0。 for (int j = 0。 str = new StringBuffer()。 } catch (Exception e) { ()。 } } File file = new File()。 (childs[j][k])。 k++) { // info[g][0] = childs[j][k]。 j++) { for (int k = 0。 for (int j = 0。 // 這里得到的groups數(shù)組記錄的是得到的34個(gè)一級(jí)地區(qū)字符串, // childs記錄的是與groups數(shù)組對(duì)應(yīng)的一級(jí)地區(qū)對(duì)應(yīng)的市級(jí)別的字符串名 int g = 0。 urlBuilder = null。 sum = sum + 1。 String[][] code = (webContent)。 (.xml)。 // + 010203 + .xml urlBuilder = new StringBuffer(urlPre)。 n towns[j].length。 j 。 sum = 0。 } childs[i] = new String[sum]。 // towns[] 是一個(gè)二維數(shù)組 ,因?yàn)閠own是三維數(shù)組 towns[j] = (webContent)。 (.xml)。 j++) { // 由城市碼來得到地方碼URL + 0102 +.xml urlBuilder = new StringBuffer(urlPre)。 for (int j = 0。 String[][][] towns = new String[][][]。 // 得到指定省份或直轄市信息內(nèi)容 webContent = (())。 (provinces[i][0])。 i++) { // 得到省份名稱 groups[i] = provinces[i][1]。 // 開始遍歷 for (int i = 0。 String[][] childs = new String[][]。 String[][] provinces = (webContent)。 // ()。 String webContent。具體的獲取過程通過不斷的修改鏈接地址并調(diào)用這兩個(gè)函數(shù),最后就能夠獲取全部的數(shù)據(jù),最后以文本的形式暫時(shí)存儲(chǔ)起來。 } return null。 i = i + 1。 citys[i][0] = (0, index)。|39。 while(()){ String city = ()。 int i = 0。 int count = ()。amp。 } return info。 } ()。 String line。 file = new URL(url)。 String info = 。創(chuàng)建連接,然后讀入數(shù)據(jù),最后將得到的內(nèi)容以字符串的形式返回。首先下載得到包含城市信息的文本內(nèi)容,然后再解析這個(gè)文本得到城市和編號(hào)。這里寫了一個(gè)程序來獲取這些數(shù)據(jù)。在獲取某一城市的天氣數(shù)據(jù)的時(shí)候,就是依據(jù)這個(gè)城市的城市碼向服務(wù)器發(fā)送請(qǐng)求,然后得到對(duì)應(yīng)的天氣數(shù)據(jù)后返回,在界面中顯示給用戶,所有城市的天氣數(shù)據(jù)的獲取都依賴于對(duì)應(yīng)的城市碼,所以得到所有的城市名及其城市碼就是重中之重的事情。這里需要指出的是,不論是控件還是資源文件,在應(yīng)用程序中用到的時(shí)候,然后進(jìn)行對(duì)對(duì)象進(jìn)行操作。線性布局在代碼中表示為L(zhǎng)inearlayout,它是以線性的方式逐個(gè)顯示在它內(nèi)部聲明的控件,布局的方向有垂直和水平兩種,并且可以設(shè)置寬高等很多屬性。有關(guān)SQLite數(shù)據(jù)庫的內(nèi)容就介紹到這里,更多的可以到幫助文檔中查找。 等,其他命令與此類似。這里是在Windows平臺(tái)下,首先打開已創(chuàng)建的Android虛擬設(shè)備,然后打開命令行提示符,輸入 adb shell 命令,切換到Android平臺(tái)下,進(jìn)入到創(chuàng)建數(shù)據(jù)庫的目錄,然后輸入命令 sqlite3數(shù)據(jù)庫名,就可以打開對(duì)應(yīng)的SQLite數(shù)據(jù)庫。Service可以再多場(chǎng)合的應(yīng)用中使用。Service執(zhí)行的是沒有界面的長(zhǎng)生命周期的代碼。Intent的使用具體有以下3種形式:1. 通過startActivity方法來啟動(dòng)一個(gè)新的Activity;2. 通過Broadcast Intent 機(jī)制可以將一個(gè)Intent發(fā)送給任何對(duì)這個(gè)Intent反省去的BroadcastReceiver;3. 通過startService或者bindService方法來和后臺(tái)的Service進(jìn)行交互。因此,Intent在這里起著一個(gè)媒體中介的作用,專門提供組件互相調(diào)用的相關(guān)信息,實(shí)現(xiàn)調(diào)用者與被調(diào)用者之間的解耦。 IntentIntent是將一個(gè)要執(zhí)行的動(dòng)作的抽象的描述,一般來說是作為參數(shù)來使用,由Intent來協(xié)助完成Android各個(gè)組件之間的通訊。這個(gè)過程官方給出了描述,::Activity生命周期每一個(gè)Activity本身是一個(gè)Java文件,在這個(gè)Java文件里有控件的設(shè)置和函數(shù)的操作等,但是頁面的布局卻不在Java文件中,而是一個(gè)xml文件,放在res目錄的Layout文件夾中;每一個(gè)xml文件稱為一個(gè)Layout布局文件,在對(duì)應(yīng)的Java文件中設(shè)置應(yīng)用的是哪個(gè)布局文件,每一個(gè)Activity對(duì)應(yīng)一個(gè)布局文件。應(yīng)用程序中用到的字符串、圖片、布局文件等等都可以在這里找到對(duì)應(yīng)的id,在使用的時(shí)候直接引用對(duì)應(yīng)的id即可;:全局配置文件,程序中的Activity、Service、Broadcast,還有權(quán)限聲明和其他需要注冊(cè)到Android系統(tǒng)中的等等應(yīng)用,都需要在這里聲明過后才能夠正常使用;以上是對(duì)Android程序的目錄設(shè)置做了一個(gè)大概的介紹,針對(duì)本項(xiàng)目,包的設(shè)置和文件的存放下面也給出詳解::包名介紹包的名稱說明存放了4個(gè)界面類數(shù)據(jù)的下載和解析等操作數(shù)據(jù)庫操作實(shí)體類后臺(tái)服務(wù)assets存放數(shù)據(jù)庫文件res資源文件:圖片、布局文件等 相關(guān)技術(shù)介紹 ActivityActivity是Android平臺(tái)中非常重要的一個(gè)組件,是所有程序的根本,所有程序的流程都運(yùn)行在Activity之中,是Android當(dāng)中最基本的模塊之一。下面對(duì)主要文件進(jìn)行介紹::可以理解為整個(gè)應(yīng)用程序的字典,里面存放這大量的靜態(tài)整型常量。經(jīng)過了解,全國(guó)共有2564個(gè)縣級(jí)以上城市,所以在cities表中共有2564條記錄,而在city表中只有一條記錄,表示如下::cities字段名數(shù)據(jù)類型說明_idInteger主鍵codevarchar(10)城市碼cityvarchar(10)城市名:city字段名數(shù)據(jù)類型說明_idInteger主鍵codevarchar(10)默認(rèn)城市碼5 系統(tǒng)實(shí)現(xiàn) 文件結(jié)構(gòu)介紹:文件結(jié)構(gòu)圖,為項(xiàng)目中的文件目錄結(jié)構(gòu)。 界面設(shè)計(jì)根據(jù)前面對(duì)系統(tǒng)的需求分析可以知道,系統(tǒng)大概需要四個(gè)界面,下面進(jìn)行簡(jiǎn)要介紹: 加載頁面:程序開始運(yùn)行時(shí)加載的頁面,顯示應(yīng)用程序歡迎信息,此時(shí),軟件進(jìn)行基本的準(zhǔn)備工作,如創(chuàng)建數(shù)據(jù)庫、獲取數(shù)據(jù)等操作;::加載界面草圖實(shí)時(shí)天氣頁面:顯示實(shí)時(shí)詳細(xì)天氣情況,主要包括城市名、溫度、天氣描述、風(fēng)速、發(fā)布時(shí)間、溫馨提示以及對(duì)應(yīng)的圖片等詳細(xì)天氣信息,還有是否默認(rèn)為默認(rèn)城市和未來天氣按鈕,當(dāng)看到的城市是默認(rèn)城市時(shí),會(huì)提示這是默認(rèn)城市,當(dāng)不是默認(rèn)城市時(shí),這個(gè)區(qū)域會(huì)顯示為設(shè)置默認(rèn)按鈕,點(diǎn)擊可以設(shè)置為默認(rèn),下次運(yùn)行程序后會(huì)直接顯示默認(rèn)城市信息;在這個(gè)頁面中設(shè)置有菜單,在菜單中給出選擇城市和退出選項(xiàng);::實(shí)時(shí)天氣界面草圖未來天氣頁面:顯示未來六天的天氣信息,考慮到手機(jī)界面的原因,這里簡(jiǎn)要的給出未來每天的天氣情況,主要給出天氣變化情況,突出重點(diǎn),使用戶對(duì)未來天氣信息一目了然;::未來天氣界面草圖選擇城市頁面:選擇要查看的城市名稱,然后搜索;這里可以搜索到全國(guó)所有縣級(jí)以上城市和地區(qū),總共2564個(gè);當(dāng)輸入錯(cuò)誤的時(shí)候,會(huì)給出提示,不存在該地名;搜索到這個(gè)城市后,在下方給出連接,點(diǎn)擊后查看;::搜索界面草圖在每個(gè)頁面的下方還應(yīng)顯示有版權(quán)信息,內(nèi)容為編寫作者和所屬組織,在最后將會(huì)統(tǒng)一加入到每個(gè)界面
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1