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

正文內(nèi)容

基于android平臺新聞客戶端設(shè)計與實現(xiàn)(編輯修改稿)

2025-01-11 02:32 本頁面
 

【文章內(nèi)容簡介】 istView的第 3個 Item,啟動一個新的 Activity界面,顯示設(shè)置中心的內(nèi)容。新聞客戶端的組成結(jié)構(gòu)圖如 圖 33所示。 湖北第二師范學(xué)院本科畢業(yè)論文 8 圖 33 新聞客戶端組成結(jié)構(gòu)圖 新聞客戶端操作流程圖 新聞客戶端操作流程圖,在 Launcher界面點擊該新聞客戶端 icon,啟動該應(yīng)用,進(jìn)入應(yīng)用的歡迎界面,展現(xiàn)一些 logo信息,當(dāng)用戶觸摸屏幕或者等待 3000ms,應(yīng)用程序自動進(jìn)入主界面,用戶從屏幕左邊緣向右滑動,呼出側(cè)邊欄,點擊其中的不同的item,程序根據(jù)點擊 item的 position,主界面切換到不同的 fragment顯示各自的信息。操作流程圖如圖 33所示。 S p l a s h A c t i v i t yS t a r t A p pM a i n A c t i v i t yP o s i t i o n = 0C l i c k L e f t M e n u I t e mP o s i t i o n = 3P o s i t i o n = 2P o s i t i o n = 1S h o w N e w s C o n t e n t F r a g m e n tS h o wP h o t o C o n t e n t F r a g m e n tS h o w N e w s C o n t e n t F r a g m e n tS h o w S e t t i n g A c t i v i t y結(jié) 束 圖 33 新聞客戶端操作流程圖 湖北第二師范學(xué)院本科畢業(yè)論文 9 第 4 章 新聞客戶端開發(fā)所用技術(shù) JSON 數(shù)據(jù)傳輸格式 JSON(JavaScript Object Notation,JavaScript 對象表示法 )是一種輕量級的數(shù)據(jù)交換格式語言, JSON 是獨立于語言的文本格式,這使得 JSON 具備了跨平臺的特點,在解析速度方面, JSON 遠(yuǎn)遠(yuǎn)快于 XML。在當(dāng)前移動互聯(lián)網(wǎng)的蓬勃發(fā)展中, JSON作為服務(wù)器和客戶端間數(shù)據(jù)交換格式,正在變得越來越重要。 JSON 可用于描述的數(shù)據(jù)結(jié)構(gòu)主要有以下兩種: (1)對象:表示用“ {}”括起來的內(nèi)容,數(shù)據(jù)結(jié)構(gòu)為 {key:value,key:value,...}的鍵值對的結(jié)構(gòu),在面向?qū)ο蟮恼Z言中 ,key 為對象的屬性, value 為對應(yīng)的屬性值,這個屬性值的類型可以是數(shù)字,字符串,數(shù)組,對象等。 (2)JSON 對象:一般以‘ {’開始,以‘ }’結(jié)尾,在兩者之間包含一系列非排序的名稱 /值對,每一名稱 /值對之間以分號隔開即可。 Gson 類庫 Gson是 Google提供的用來在 java對象和 JSON數(shù)據(jù)之間進(jìn)行映射的 java類庫,可以將一個 JSON 字符串轉(zhuǎn)換成一個 java 對象,或者反過來。 GSON 和其他現(xiàn)有的java json 類庫最大的不同是 gson 需要實例化實體類,而不需要使用 annotation來標(biāo)識需要序列化的字段。 Gson 部分常用解析方法: T T fromJson(String json, ClassT classOfT) This method deserializes the specified Json into an object of the specified class. T T fromJson(String json, Type typeOfT) This method deserializes the specified Json into an object of the specified type String toJson(Object src) This method serializes the specified object into its equivalent Json representation. 湖北第二師范學(xué)院本科畢業(yè)論文 10 String toJson(Object src, Type typeOfSrc) This method serializes the specified object, including those of generic types, into its equivalent Json representation. SharedPreference 文件存儲 SharedPreferences 是 Android 平臺上一個輕量級的存儲類,用來保存應(yīng)用的一些常用配置。它提供了 java 常規(guī)的 long、 int、 String 等類型數(shù)據(jù)的保存接口,其保存的文件路徑為 data/data/應(yīng)用包名 /shared_prefs。用戶卸載或清除該應(yīng)用的數(shù)據(jù)時,該文件將會被自動刪除。 SharedPreference 四種操作模式。 (1) :為默認(rèn)操作模式 ,代表該文件是私有數(shù)據(jù) ,只能被應(yīng)用本身訪問 ,在該模式下 ,寫入的內(nèi)容會覆蓋原文件的內(nèi)容。 (2) :模式會檢查文件是否存在 ,存在就往文件追加內(nèi)容 ,否則就創(chuàng)建新文件 . (3) :表示當(dāng)前文件可以被其他應(yīng)用讀取。 (4) :表示當(dāng)前文件可以被其他應(yīng)用寫入。 SharedPreference 讀寫方式: 寫: SharedPreferences sp = getSharedPreferences(String name, int mode)。 editor = ()。 (key,value)。 ()。 讀: SharedPreferences sp = getSharedPreferences(String name, int mode)。 String value = (String key, String defValue) xUtils 框架 xUtils 包含了很多實用的 android工具,最低兼容 android (api level 8) 湖北第二師范學(xué)院本科畢業(yè)論文 11 目前 xUtils主要有四大模塊: (1)DbUtils模塊: ① android中的 orm框架,一行代碼就可以進(jìn)行增刪改查; ②支持事務(wù),默認(rèn)關(guān)閉; ③可通過注解自定義表名,列名,外鍵,唯一性約束, NOT NULL約束, CHECK約束等(需要混淆的時候請注解表名和列名); ④支持綁定外鍵,保存實體時外鍵關(guān)聯(lián)實體自動保存或更新; ⑤自動加載外鍵關(guān)聯(lián)實體,支持延時加載; ⑥支持鏈?zhǔn)奖磉_(dá) 查詢,更直觀的查詢語義,參考下面的介紹或 sample中的例子。 (2)ViewUtils模塊: ① android中的 ioc框架,完全注解方式就可以進(jìn)行 UI,資源和事件綁定; ②新的事件綁定方式,使用混淆工具混淆后仍可正常工作; ③目前支持常用的 20種事件綁定,參見 ViewCommonEventListener類和包。 (3)HttpUtils模塊: ①支持同步,異步方式的請求; ②支持大文件上傳,上傳大文件不會 oom; ③支持 GET, POST, PUT, MOVE, COPY, DELETE, HEAD, OPTIONS, TRACE, CONNECT請求; ④下載支持 301/302重定向,支持設(shè)置是否根據(jù) ContentDisposition重命名下載的文件; ⑤返回文本內(nèi)容的請求 (默認(rèn)只啟用了 GET請求 )支持緩存,可設(shè)置默認(rèn)過期時間和針對當(dāng)前請求的過期時間。 (4)BitmapUtils模塊: ①加載 bitmap的時候無需考慮 bitmap加載過程中出現(xiàn)的 oom和 android容器快湖北第二師范學(xué)院本科畢業(yè)論文 12 速②滑動時候出現(xiàn)的圖片錯位等現(xiàn)象; ③支持加載網(wǎng)絡(luò)圖 片和本地圖片; ④內(nèi)存管理使用 lru算法,更好的管理 bitmap內(nèi)存; ⑤可配置線程加載線程數(shù)量,緩存大小,緩存路徑,加載顯示動畫等 ... Android SDK 框架 Android是一種基于 Linux的自由及開放源代碼的操作系統(tǒng),主要使用與移動設(shè)備,如智能手機和平板電腦,由 Google公司和開放手機聯(lián)盟領(lǐng)導(dǎo)及開發(fā)。 Android系統(tǒng)由 linux內(nèi)核層,系統(tǒng)運行庫層,應(yīng)用程序框架層,應(yīng)用程序?qū)咏M成。應(yīng)用程序?qū)邮褂脩?yīng)用框架層提供的接口,方法開發(fā)應(yīng)用程序, Android系統(tǒng)架構(gòu)圖如圖 31所示。 圖 31 Android 系統(tǒng)架構(gòu)圖 自定義 View 當(dāng) Android 原生的控件不能滿足項目需要時,那就需要使用自定義控件,通常湖北第二師范學(xué)院本科畢業(yè)論文 13 自定義控件有三種實現(xiàn)方式,繼承 View 重寫 onDraw();繼承 ViewGroup 實現(xiàn)特殊的布局控件;繼承已有的 view 控件。通過自定義的 View 組件,能夠?qū)崿F(xiàn)一些復(fù)雜實用的組件,在滿足項目需要的同時,也提高了代碼的復(fù)用性。 本新聞客戶端新聞頁的輪播圖 CarouselView,是繼承自 ViewGroup,由于將輪播圖的實現(xiàn)邏輯封裝到了一個 view 類中,所以在新聞頁中不用再重復(fù) 編寫實現(xiàn)邏輯,而只是在各自的布局文件中引入即可,提高了代碼的內(nèi)聚性,簡易性,通用性和易維護(hù)性。顯示網(wǎng)頁的控件是使用的繼承自原有控件類,在其初始化時添加水平進(jìn)度條,在布局文件中引入時,即是帶進(jìn)度條的 WebView 控件。帶 RadioButton 的Dialog 使用繼承自原有的 Dialog 類,根據(jù)構(gòu)造函數(shù)傳入的參數(shù),代碼動態(tài)創(chuàng)建控件并添加到自定義的 Dialog 中, new 創(chuàng)建控件時,可以使用的不同的參數(shù),創(chuàng)建出不同 RadioButton 個數(shù)不同的 Dialog,同時注冊的回調(diào)接口,使得創(chuàng)建不同的dialog 在用戶點擊 確定執(zhí)行不同 dialog 各自的保存邏輯,大大提高了代碼的復(fù)用性。 三級緩存策略 為提高用戶的使用體驗,避免應(yīng)用程序在加載大量圖片時出現(xiàn) OOM異常和節(jié)省用戶的 3G流量,通常需要對請求過的數(shù)據(jù)進(jìn)行的一定內(nèi)存緩存或 sdcard緩存,使得用戶下次在進(jìn)入時,不開啟流量也可以查看到已經(jīng)請求過度額數(shù)據(jù)信息。 在 Android平臺中,通常使用 LruCache內(nèi)存緩存和 DiskLruCache磁盤緩存。LruCache主要原理是把最近使用的對象用強引用存儲在 LinkedHashMap中,并且把最近最少使用的對象在 緩存值達(dá)到預(yù)定值之前從內(nèi)存中移除。通過將 LruCache和DiskLruCache結(jié)合使用可以很好地解決 OOM內(nèi)存溢出的問題。 湖北第二師范學(xué)院本科畢業(yè)論文 14 第 5 章 基于新聞客戶端的實現(xiàn) Fragment 碎片化 Fragment 介紹 Fragment是 Google在 Android (API level 11)中引入的概念,其是為了解決不同屏分辨率的動態(tài)和靈活 UI設(shè)計。 Fragment的出現(xiàn)使開發(fā)者可以將 Activity分離成多個可重用的組件,每個都有它自己的生命周期和 UI。在解決平板和手機的布局適配問題 上, fragment起著重要的作用。在 fragment出現(xiàn)之前,在平板上顯示類別分類和該類別下的詳細(xì)信息,需要使用兩個 Activity顯示,導(dǎo)致顯示類別的Activity存在大部分的空余空間,降低了用戶的使用體驗,而在出現(xiàn)了 fragment之后,只需在同一個 Activity中添加兩個 fragment,一個 fragment顯示類別標(biāo)題,另一個 fragment顯示該類別下的詳細(xì)信息,不但使顯示效果變好,而且更容易維護(hù)各自的生命周期。 Fragment 生命周期 由于 Fragment必須嵌入到 Activity中使用,所以 Fragment的生命周期和它所在的 Activity是密切相關(guān)的 ,與 Activity生命周期非常相似。比如,如果 Activity是暫停狀態(tài),其中所有的 Fragment都是暫停狀態(tài);如果 Activity是 stopped狀態(tài)這個Activity中所有的 Fragment都不能被啟動;如果 Activity被銷毀,那么它其中的所有 Fragment都會被銷毀。 Fragment生命周期如圖 41所示。 湖北第二師范學(xué)院本科畢業(yè)論文 15 圖 41 Fragment 生命周期 Fragment 與 Activity 交互 ( 1) Activity傳值給 Fragment 在 Activity中創(chuàng)建 Bundle數(shù)據(jù)包,調(diào)用 fragment的 setArguments(Bundle bundle)方法,將 Bundle數(shù)據(jù)包傳給 fragment,在 fragment中調(diào)用 getArguments方法得到傳遞過來的值。 ( 2) Fragment傳值給 Activity 在 fragm
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1