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

正文內(nèi)容

基于安卓的手機(jī)日歷管理系統(tǒng)(參考版)

2024-11-21 21:28本頁(yè)面
  

【正文】 選擇類型的實(shí)現(xiàn)方法以其中一個(gè)為例 。最后效果如圖43。這里先建立了日程類型的文本框,以layout_below來(lái) 將這個(gè)文本框放在標(biāo)題框(用 id來(lái)定位標(biāo)題框)下面,下面幾個(gè)需要特殊設(shè)定的參數(shù): android:layout_below=id/scheduleTop//文本框的位置設(shè)置 android:layout_width=160dp//文本框的寬 android:layout_height=40dp//文本框的高 android:drawableRight=drawable/schedule_type//在這個(gè)文本框右邊添加一個(gè)圖標(biāo)然后是添加日程重復(fù)方式的文本框,這需要放在日程類型文本框的右邊,這是利用 layout_ toRightOf來(lái)實(shí)現(xiàn),相應(yīng)的也要設(shè)置位于標(biāo)題框下方,其他的與上面的相類似。 android:id=+id/scheduleTop//id號(hào) android:gravity=center//位置居中 android:layout_width=fill_parent android:layout_height=40dp//這兩個(gè)分別為寬和高 android:background=drawable/top_day//背景圖片的位置 android:textStyle=bold//文本的樣式加粗 android:clickable=true//可點(diǎn)擊的選項(xiàng) android:textColor=000000//文本顏色設(shè)為黑色 android:text=編輯日程 //文本框上的文字 / 下面分別為日程類型及重復(fù)類型這兩個(gè)類型的選擇的點(diǎn)擊框。這樣可以更清晰將各個(gè)框框組合在一起,使得更加美觀。) ( 2)新增日程界面的布局,建立一個(gè) 名為 schedule的空布局文件。 完成這些邊框類之后就是使用它們,這個(gè)與以前的基本類相似,只是將布局中原來(lái)的基本類名類,如 TextView,改為對(duì)應(yīng)路徑的名稱為 。 (rectF, 8, 8, paint)。//抗鋸齒方法 RectF rectF = new RectF(2,0,()2,()2)。//設(shè)置樣式 ()。// 實(shí)例化一支畫(huà)筆 (1)。 // 繪制下邊框 帶邊框的 EditText,這原本是一個(gè)基本的 EditText,文本編輯框的類,在這里加上了特殊的樣式、顏色及邊框的圓弧效果。// 實(shí)例化一支畫(huà)筆 ()。 首先是帶下邊框的 TextView,這里 TextView類的基礎(chǔ)上用畫(huà)筆實(shí)現(xiàn)了下邊框的效果。 ( 1)首先為了界面的美觀我建了幾個(gè)帶邊框的類,這些類是在原有的 textview等基本類的基礎(chǔ)上進(jìn)行美化后形成的。 if(dbOpenHelper != null){ ()。 ( 8) 關(guān)閉 數(shù)據(jù)庫(kù)。 ( 7) 當(dāng)點(diǎn)擊每一個(gè) gridview中 item時(shí) ,查詢出此日期上所有的日程標(biāo)記 (scheduleID), 通過(guò)點(diǎn)擊后得到對(duì)應(yīng)日期的年月 日信息,然后用 query方法 得到次日程標(biāo)記的 ID,用于后面得到想到相關(guān)的日程信息。這里也是使用 query語(yǔ)句進(jìn)行查詢的,只不過(guò)改變了里面的查詢使用的參數(shù)。//翻入日程的 ID (scheduletagdate, null, values)。//放入月信息 (day, ())。 (year, ())。 i++){//以 for循環(huán)的方式進(jìn)行 dateTag = (i)。 for(int i = 0。//刪除日程信息 (scheduletagdate, scheduleID=?, new String[]{(scheduleID)})。 ( 4) 刪除日程 ,這里的刪除日程需要將日程及對(duì)應(yīng)日期上的標(biāo)記一起刪除,這樣才可以便于管理,刪除使用的語(yǔ)句是 delete。查詢依舊是用 query方法,這里的的 where語(yǔ)句相關(guān)的就直接設(shè)為 null值。 另外還需要的是判斷語(yǔ)句,先用 ()判斷 curor 是否為空值,不為空則就給 cursor 賦值,空著直接 ()來(lái) 關(guān)閉。 ( 2) 查詢某一條日程信息 ,由于我這里的設(shè)計(jì)是通過(guò)對(duì)日程的點(diǎn)擊來(lái)查看當(dāng)前點(diǎn)擊日期的詳細(xì)信息,即是根據(jù)日程的 ID來(lái)查看的。 (schedule, null, values)。 //放入日程正文內(nèi)容 (scheduleDate, ())。 //放入日程類型 ID (remindID, ())。 ( 1)保存日程信息,先是從日程添加頁(yè)面里獲取 日程類型的 ID、日程重復(fù)類型的 ID、日程正文內(nèi)容、日程日程時(shí)間這幾個(gè)參數(shù),然后是使用 ContentValues類(這個(gè)類是一個(gè)鍵值對(duì),是用來(lái)存儲(chǔ)名值對(duì),它的名一般是 String類型,而值都是基本類型)來(lái) new一個(gè)參數(shù),用這 個(gè)參數(shù)的 put方法將這些個(gè)參數(shù) 放入到數(shù)據(jù)庫(kù)中。 public ScheduleDAO(Context context){ dbOpenHelper = new DBOpenHelper(context, )。 首先是需要實(shí)例化 DBOpenHelper用于數(shù)據(jù)庫(kù)數(shù)據(jù)的 get與 set。 } ( 2)再分別建立 ScheduleVO 和 ScheduleDateTag ,里面分別寫了表里面各個(gè)數(shù)據(jù)的 get(表示獲取某個(gè)變量值) 和 set(表示設(shè)置某個(gè)變量值) 方法,以便于調(diào)用。 (DROP TABLE IF EXISTS scheduletagdate)。 } 建立完表后是繼續(xù)寫入 onUpgrade 方法,這個(gè)方法會(huì)在數(shù)據(jù)庫(kù)升級(jí)時(shí)被觸發(fā),以便于軟件升級(jí)時(shí)更新表結(jié)構(gòu)。 下面是 scheduletagdate表的建立,在這個(gè)表中包括標(biāo)記的 ID、年信息、月信息、日信息、日程 ID這幾個(gè)參數(shù)。建立時(shí)對(duì)應(yīng)需要寫上參數(shù)名、參數(shù)類型、主鍵等。 OnCreate 方法是 用于初次使用軟件時(shí)生成數(shù)據(jù)庫(kù), onUpgrade 方法是 用于升級(jí)軟件時(shí)大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 23 更新數(shù)據(jù)庫(kù)表結(jié)構(gòu)。 任務(wù)界面的數(shù)據(jù)庫(kù)準(zhǔn)備 ( 1)數(shù)據(jù)庫(kù)里表的建立 分別建立了 schedule 表(日程的表)和 scheduletagdate(標(biāo)記日期所需的表) Android 提供了標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)創(chuàng)建方式。 第四章 系統(tǒng)詳細(xì)設(shè)計(jì) 22 } 最終的效果如圖 42: 圖 42 日歷界面的最終實(shí)現(xiàn)圖 系統(tǒng)任務(wù)界面的設(shè)計(jì) 任務(wù)界面包括任務(wù)主界面(所有日程的顯示)和對(duì)應(yīng)日期任務(wù)的顯示 ,任務(wù)的添加等。 dayOfWeek = ()1。 //指定某年中的某月的第一天是星期幾 public int getWeekdayOfMonth(int year, int month){ Calendar cal = ()。 每月的天數(shù)用 switch 進(jìn)行判斷賦值給月份天數(shù)的參數(shù)。 在 SpecialCalendar 是閏年的判斷函數(shù),每月天數(shù),以及對(duì)每月的第一天星期的判斷。 return Animals[(year 4) % 12]。 例如生肖則是建立一個(gè)字節(jié)數(shù)組來(lái)記錄十二生肖,并且用函數(shù)來(lái)傳回參數(shù)對(duì)應(yīng)的生肖。 這里有兩個(gè)方法,分別是 LunarCalendar 和 SpecialCalendar。 為了完整性剩余的手勢(shì)函數(shù)只是寫了方法未使用。 然后是書(shū)寫書(shū)寫手勢(shì)的各個(gè)方法,最主要的是 onFling的方法,在這里實(shí)現(xiàn)了頁(yè)面的向左及向右滑動(dòng)的操作,這個(gè)操作是由條件語(yǔ)句來(lái)實(shí)現(xiàn)的,由滑動(dòng)兩點(diǎn)的 x坐標(biāo)的值進(jìn) 行差值計(jì)算,如果是起點(diǎn)減去重點(diǎn)大于 120時(shí)著向左滑動(dòng),反之則向右滑動(dòng)。 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 21 ( 3)由于日歷菜單需要能通過(guò)手勢(shì)觸摸來(lái)進(jìn)行翻頁(yè),所以要在總體布局下建立一個(gè)ViewFlipper 類,這個(gè)類是用來(lái)實(shí)現(xiàn)屏幕的切換效果的。在這方法中再執(zhí)行方法 getweek,用來(lái)得出以后需要標(biāo)記的日期,這個(gè)在后面來(lái)介紹。在這個(gè)月中還需對(duì)當(dāng)天來(lái)一個(gè)特殊化,即設(shè)置當(dāng)天日期的背景為圖片 current_day_bgc,字色為白。得出這行的位置就需要 通過(guò)對(duì)參數(shù) position(對(duì)應(yīng)編號(hào))進(jìn)行判斷是否在 7以內(nèi)。 然后是動(dòng)態(tài)化的對(duì)頁(yè)面進(jìn)行屬性值的設(shè)置。例如在函數(shù)開(kāi)始時(shí)就 String[] dayNumber = new String[49]。 創(chuàng)建完日歷的布局后,是在里面添加上具體的日期。 在這個(gè)方法里面還需加入個(gè) OnTouch 方法,用來(lái) 將 gridView 中的觸摸事件回傳給gestureDetector,進(jìn)行下面的觸摸操作,即: //將 gridview中的觸摸事件回傳給 gestureDetector Override public boolean onTouch(View v, MotionEvent event) { return .onTouchEvent(event)。并且還加上判斷屏幕大小的條件,這需要加入取得屏幕大小的對(duì)應(yīng)函數(shù),這里如果是 800*480 屏幕的話,就將列寬設(shè)置為 69。 同樣的首先是動(dòng)態(tài)化布局的建立,這可以實(shí)例化 GridView 為 gridView 參數(shù)進(jìn)行的。 我將此方法命名為 addGridView。 最后是對(duì)界面的一些美化,同樣使用動(dòng)態(tài)布局模式進(jìn)行。其中有一個(gè)閏年判斷的條件函數(shù),是通過(guò) ()的值驚醒判斷的。 然后建立一個(gè)可以進(jìn)行改變值的 StringBuffer 類型的參數(shù) textDate。 然后書(shū)寫方法來(lái)添加 頭部的年份 閏哪月等信息 。 首先需要寫了一個(gè) CalendarView 類,這是為日歷顯示所寫的一個(gè)類,在其中使用重載的方法定義了幾個(gè)不同參數(shù)的 CalendarView,用于不同的情況。 ( 1)首先是建立一個(gè)布局文件,上面一部分是顯示年月日、生肖和農(nóng)歷的干支紀(jì)年。 最后在添加 RadioGroup的選擇操作函數(shù) ,這里是通過(guò) switch來(lái)完成對(duì)應(yīng)按鈕的功能的實(shí)現(xiàn),在每個(gè) case項(xiàng)中通過(guò) 。實(shí)施的代碼如下: selector xmlns:android= item android:state_focused=true android:state_enabled=true android:state_pressed=false android:drawable=drawable/btn_bg_s / item android:state_enabled=true android:state_pressed=true android:drawable=drawable/btn_bg_s / item android:state_enabled=true android:state_checked=true 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 19 android:drawable=drawable/btn_bg_d / /selector 制定完主頁(yè)面布局后,在 src/ 下的 MainPage 文件中 OnCreate( OnCreate 方法是用來(lái)初始化 Activity 實(shí)例對(duì)象的)中調(diào)用布局,到現(xiàn)在為止頂部菜單欄的布局已經(jīng)基本完成,但現(xiàn)在里面所對(duì)應(yīng)的內(nèi)容還是空的。在這種情況下就只有也只能有一個(gè) RadioButton能被選擇,并且在開(kāi)始時(shí)默認(rèn)了第一個(gè)按鈕被選中。內(nèi)部的選項(xiàng)卡是通過(guò) TabWiget 來(lái)實(shí)現(xiàn) 首先建立好 Android 工程(我的工程名為: ScheduleManager),在工程下的 res/layout下建立一個(gè)名為 main 的空 xml 文件,然后在這個(gè)文件里按照思路來(lái)添加布局代碼??傮w書(shū)寫了日程添加界面的功能點(diǎn),結(jié)構(gòu)圖如日程管理系統(tǒng) 主界面 日歷模塊 任務(wù)模塊 設(shè)置模塊 關(guān)于模塊 日歷顯示 總?cè)粘田@示 類型設(shè)置 關(guān)于界面 單一日程顯示 日歷顯示 陰歷顯示 節(jié)假日顯示 日期顯示 大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 17 圖 33 所示, 圖 33 日程界面模塊 新建日程顯示 重復(fù)類型選擇 日程時(shí)間書(shū)寫 日程類型選擇 日程內(nèi)容書(shū)寫 第四章 系統(tǒng)詳細(xì)設(shè)計(jì) 18 第 四 章 系統(tǒng)的詳細(xì)設(shè)計(jì) 系統(tǒng)主界面的設(shè)計(jì)和實(shí)現(xiàn) 系統(tǒng)主界面的頭部菜單欄 制作這個(gè)頭部菜單欄是為了 提升軟件的可操作性,我用的是 TabHost+RadioGroup 相結(jié)合的方法來(lái)制作這個(gè)部分的。 第三章 系統(tǒng)需求分析及概要設(shè)計(jì) 16 圖 31 總系統(tǒng)功能模塊 然后在總體的功能模塊后面是主體功能的詳細(xì)模塊顯示。在結(jié)構(gòu)圖中包括了功能模塊的表示及其中部分功能的實(shí)現(xiàn)原理。 ( 4)關(guān)于界面模塊:關(guān)于界面中包含了本軟件的設(shè)計(jì)信息及一些基本信息。另外也有對(duì)日程的一系列管理操作的功能。日歷日期所對(duì)應(yīng)的日程顯示界面也是相應(yīng)的顯示。 ( 2)日程管理模塊:在本模塊中包括總的日程顯示頁(yè)面和日歷頁(yè)面所跳轉(zhuǎn)到的日程顯示界面或者是日程添加界面。在日歷界面上每個(gè)日期都會(huì)跳到當(dāng)前日期的日程添加界面或者是
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1