android日歷開源
⑴ Android 日歷提醒軟體是如何開發的
這種應用一般都是要系統許可權的,一般的日歷軟體使用定時器alarmmanager設置定時任務後,如果應用被殺死,那是不會有提醒的。所以這種應用要保證不被殺死。
⑵ android日歷控制項
1.DatePicker
在Android中,DatePicker用來實現日期輸入設置,日期的設置范圍為1900年1月1日至2100年12月31日。
1.1常用xml屬性
DatePicker的常用xml屬性如圖1所示:
圖1 DatePicker常用xml屬性
其中,android:calendarViewShown[boolean]用於設置是否顯示calendar view;android:endYear[int]用於設置截至日期;android:maxDate[int]用於設置最大的日期;android:minDate[int]用於設置最小的日期;android:spinnersShown[boolean]用於設置是否顯示spinners;android:startYear[int]用於設置起始日期。
1.2常用方法
DatePicker的常用方法有以下一些:
(1)public CalendarView getCalendarView(); //獲取CalendarView
(2)public boolean getCalendarViewShown(); //獲取CalendarView是否顯示
(3)public int getDayOfMonth(); //獲取當前日期的日
(4)public long getMaxDate(); //獲取最大日期
(5)public long getMinDate(); //獲取最小日期
(6)public int getMonth(); //獲取當前日期的月
(7)public boolean getSpinnersShown(); //獲取Spinners是否顯示
(8)public int getYear(); //獲取當前日期的年
(9)public void init(int year,int monthOfYear,int dayOfMonth,
DatePicker.OnDateChangedListener onDateChangedListener); //初始化日期
(10)public void setCalendarViewShown(boolean shown);//設置是否顯示CalendarView
(11)public void setMaxDate(long maxDate); //設置最大日期
(12)public void setMinDate(long minDate); //設置最小日期
(13)public void setSpinnersShown(boolean shown); //設置是否顯示Spinners
(14)public void updateDate(int year,int month,int dayOfMonth); //更新當前日期2.TimePicker
在Android中,TimePicker用來實現時間輸入設置,可以選擇12或24小時模式。TimePicker的常用方法有以下一些:
(1)public Integer getCurrentHour(); //獲取當前時間的小時
(2)public Integer getCurrentMinute(); //獲取當前時間的分鍾
(3)public boolean is24HourView(); //獲取是否為24小時模式
(4)public void setCurrentHour(Integer currentHour); //設置當前時間的小時
(5)public void setCurrentMinute(Integer currentMinute); //設置當前時間的分鍾
(6)public void setIs24HourView(Boolean is24HourView); //設置24小時模式3.DatePickerDialog
在Android中,DatePickerDialog用來顯示日期對話框。DatePickerDialog的常用方法有以下一些:
(1)public DatePicker getDatePicker(); //獲取DatePicker中的日期值
(2)public void onClick(DialogInterface dialog,int which); //響應對話框中的點擊事件
(3)public void onDateChanged(DatePicker view,int year,int month,int day); //響應日期改變事件
(4)public void updateDate(int year,int monthOfYear,int dayOfMonth); //更新當前日期4.TimePickerDialog
在Android中,TimePickerDialog用來顯示時間對話框。TimePickerDialog的常用方法有以下一些:
(1)public void onClick(DialogInterface dialog,int which); //響應對話框中的點擊事件
(2)public void onTimeChanged(TimePicker view,int hourOfDay,int minute); //響應時間改變事件
(3)public void updateTime(int hourOfDay,int minuteOfHour); //更新當前時間5.AnalogClock
在Android中,AnalogClock用於顯示指針式時鍾,該時鍾僅有時鍾和分鍾兩個指針。6.DigitalClock
在Android中,DigitalClock用來顯示數字式時鍾,顯示格式為HH:MM:SS AM/PM。
⑶ android 日歷選擇器有開源框架嗎
android應用開發框架是 Application Framework. 其系統架構由5部分組成,分別是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。第二部分將詳細介紹這5個部分。下面自底向上分析各層。
⑷ 急求日歷軟體
一、農歷日歷軟體 3.02.28
軟體介紹:農歷日歷軟體是一款完全綠色免費的軟體,該軟體可以及時讓您了解到每一天的日歷與農歷,各種節日等等。
二、藍軟基地節日日歷軟體 v1.0
軟體介紹:藍軟基地節日日歷軟體可以查看農歷日期、節氣信息,並能在日期下面標注節日名稱的軟體。
三、Google日歷同步軟體 for iPhone 1.0
軟體介紹:Google日歷同步軟體,界面和Google日歷很相似,同步更新
四、日歷通知軟體 NotiMe V1.2.9
軟體介紹:日歷通知軟體NotiMe是一個基於位置的谷歌日歷的通知服務!它是開源的,所以你可以通過官方網站或發送郵件來幫助作者改進軟體。推薦理由:...
五、日歷通知軟體 0.9.2 for Android
軟體介紹:NotiMe!日歷通知軟體,是一個基於位置的谷歌日歷的通知服務!它是開源的,所以你可以通過官方網站或發送郵件來幫助作者改進軟體.
六、NotiMe日歷通知軟體V0.9.2Android1.5
軟體介紹:NotiMe日歷通知軟體,是一個基於位置的谷歌日歷的通知服務它是開源的,所以你可以通過官方網站或發送郵件來幫助作者改進軟體.
七、系統欄日歷軟體Calendar in Status bar V2.0.3正式版
軟體介紹:系統欄日歷軟體Calendar in Status bar是在系統欄上顯示星期與日期的超強軟體。
八、畜牧人日歷記賬軟體 1.0
九、藏心閣 8.08
【藏心閣】是您管理並長期保存核心機密資料的專業化軟體,是您貼身的"信息密碼箱"。內含<萬年歷> 是您安排事務、分類記錄的好幫手,一年事務一目瞭然。決非一般日歷可比!
⑸ 開發Android 日歷教程
一、創建
Android
Project
在新建對話框中輸入
App
屬性,SDK版本全部選最新的,不作版本兼容。主題選擇
Holo
Dark。
下一步,使用默認設置
下一步,使用默認設置
下一步,使用默認配置
下一步,使用默認設置
創建完成後的初始畫面
在上面的步驟中,我們選擇了創建
MainActivity,ADT
幫我們在
src
目錄下生成了
MainActivity.java
文件,在
res/layout/
目錄下生成了
activity_main.xml
文件,並在編輯窗口打開,如上圖,是
UI
界面定義文件,這是一個標準的
xml
文件,顯示的圖像就是由編輯器解析
xml
文件描繪出來的。點擊下方的
"Graphical
Layout"
和
“activity_main.xml"
可以在圖形編輯
和
xml
文本編輯器之間切換。
為了項目結構清晰,我們新建一個包,專門用來放
activity:
包名定為
ui.activity
這里,將
Package
Explorer
的顯示方式改為
Hierarchical
拖動
MainActivity.java
到
ui.activity
包下,彈出更新對話框,選擇OK。
由於改變了
activity
的位置,我們需要更新
AndroidManifest.xml,更正
Application
的配置。
如下圖,雙擊打開
AndroidManifest.xml,選擇
Application
標簽頁,選中
Application
Nodes
中的
MainActivity,右邊的
Name
屬性是錯誤的,點擊
Browse
重新選擇,設為:com.lingsmm.purelunarcalendar.ui.acivity
繼續向下拉,將
Screen
orientation
設置為
”sensorLandscape“,表示屏幕方向是橫屏,並感應重力方向作調整。
界面編輯窗口上方是工具欄:
1:多屏預覽,如果你的程序要兼容多種尺寸的設備,可以選擇此項。
2:主屏尺寸設定(我們的應用,不作兼容,只針對
google
Nexus
7,將此選擇為
Nexus
7,以10”畫面進行編輯布局)
3:屏幕方向,我們選擇橫屏
4:主題
5:關聯的
Java
類,Context
實例由它創建。
6:多語言支持。
7:系統版本選擇,如果兼容多版本,可以選擇不同版本進行預覽。
⑹ 做一個android日歷,從哪兒入手
如果你搭建好環境的話建議你先學一下view布局
首先你要在第一個activity創建一個垂直布局的LinearLayout,
然後再新建個水平布局的LinearLayout用來承載上面按鈕的年月日
另外再建個垂直的LinearLayout
在下面這個LinearLayout新建1個水平的LinearLayout來循環生成7個標頭「星期一,星期二」這樣的
然後在循環建4個LinearLayout循環生成日期實體框
標題框和日期框分別新建一個類,繼承view函數,在循環裡面生成,構造函數填入寬高
這兩個類裡面分別重構ondraw()函數。
這樣就ok了
⑺ Android開源日歷,materialcalendarview的選中背景如何縮小
因為項目需要,上github找了不少日歷控制項,最終敲定了MaterialCalendarView。
首先昵,要說下開源控制項使用的好處,我感覺大致有以下幾個方面:
1).網上有現成的為啥不去用,你覺得你自己寫的比別人牛逼嗎?
2).涉及年月日日期處理,滾動事件,相互交錯,沒有緊密的邏輯思維去構架,肯定漏洞百出,想想數不盡的bug,不寒而慄。
3).最關鍵的是,我懶,我懶,我懶!自己寫費時費力,牛逼的日歷組件都可以做一個app了,再說我只是想要一個選擇日期功能。
說了一堆廢話,現在我們來分析源碼了。。。。。
老外寫的東西層次感還是很分明的,我大致給它分為三個部分:日期的格式化,自定義的span效果,以及日歷控制項的實現。不用說日歷實現是最重要的一部分了,我們由簡入繁,從日期分析開始。
1)format,顧名思義,格式化,達到我們想要的日期展示樣式。
format包中有八個java文件,其中有三個介面,五個實現類。
三個介面:
DayFormatter 通過自定義的CalendarDay對象,得到一個日期的字元串標簽。其實現類是DateFormatDayFormatter。
TitleFormatter 通過自定義的CalendarDay對象,得到一個包含年月的字元串標簽,作為MaterialCalendarView的標簽。其實現類為DateFormatTitleFormatter和MonthArrayTitleFormatter。
WeekDayFormatter 將一個日期中Calendar.DAY_OF_YEAR對應的值轉換成一個字元串標簽。其實現類是ArrayWeekDayFormatter。
這三個介面都只有一個方法,有的提供了一個公有的默認實現類。其功能就是將日期的數值轉換成本地化的可讀字元串。在這里我可以想到的是,因為使用了介面,我們可以很靈活的替換其實現類,而不用更改日歷控制項中的代碼,實現定製化的需求。
2)span
spans包中只有一個類DotSpan,實現了在文字下方畫一個小圓點的效果。這是一個示例,我們可以模仿它來實現自己想要的效果。比如,如果想在日期的下方用一行小字顯示,用span是很方便的一種實現方式。
3)MaterialCalendarView
這個包中有16個Java文件,是此開源控制項主要的代碼所在。其中,組合成最終控制項的四個最重要的類是DayView,WeekDayView,MonthView和MaterialCalendarView。
DayView 繼承自CheckedTextView。之所以用CheckedTextView而不是TextView,是為了使用android.R.attr.state_checked狀態,在日期被選中時顯示不同的背景圖片。
WeekDayView 繼承自TextView,用於在日歷的第一排顯示星期的標簽。
MonthView 繼承自ViewGroup,它包含7個WeekDayView和42個DayView,即一個7*7的矩形,其中每一個矩形稱為一個tile。
MaterialCalendarView 繼承自ViewGroup,包含上方的title和下方的ViewPager。這個控制項的寬度如果不能被7整除,那麼它會自動縮小其內容,並居中。
老外實現MaterialCalendarView層次感非常強烈,注釋清楚,本人愚鈍啊,時刻不丟粗心的毛病,改造日歷期間很多功能點找不到,修改日歷的disable事件,點擊效果,日歷字體大小。。。。。等等。好了,廢話不多說,先來一份改造好的日歷圖,壓壓驚!左邊是我改造的,右邊是我們偉大開源作者的。(提倡開源,一直很欣賞這些懂的分享的人,只有弱者才會害怕自己的東西被人拿去)
左邊的日歷我針對自己項目進行了定製設計,調節了日歷大小,之前的dayview是寬高等比大小,寬度是平分屏幕,所以這樣導致高度很高,相互之間間隔比較大,我通過monthview的onMeasure方法,將高度修改為
int childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(
(int)(measureTileSize*0.65),
MeasureSpec.EXACTLY
);
這樣長寬就3/2了,這個時候只是第一步,僅僅只有monthview大小變了,整體的view大小還沒有變,所以我們還要處理下MaterialCalendarView的onMeasure 方法,對整體高度進行修改
⑻ android日歷開發,用gridview顯示日歷,通過外界按鈕更新界面顯示
很多日歷的demo,細找找吧。
http://search.apkbus.com/f/search?q=%E6%97%A5%E5%8E%86&sId=5578702&ts=1377235885&mySign=05c8dd5a&menu=1&rfh=1&qs=txt.form.a
⑼ android開發一個日歷程序關鍵地方在哪裡
最主要的地方其實就是界面的設計與各種控制項、動畫的靈活調用。
了解android其實最主要就是了解怎麼使用它的控制項。
⑽ android開發如何繪制日歷表格大神們幫幫小弟吧!
方法很多,看你用哪種。而且網上很多開源的,沒有自己繪制。
1、用android 的方式繪制。這里不多說,網上下個demo摸索去。
2、用webview,然後採用web開發中常用的日歷就可以了,當然你也可以用js自己繪制。