Android日历方式显示的日期选择组件Word文档格式.docx

上传人:b****6 文档编号:20639013 上传时间:2023-01-24 格式:DOCX 页数:18 大小:22.36KB
下载 相关 举报
Android日历方式显示的日期选择组件Word文档格式.docx_第1页
第1页 / 共18页
Android日历方式显示的日期选择组件Word文档格式.docx_第2页
第2页 / 共18页
Android日历方式显示的日期选择组件Word文档格式.docx_第3页
第3页 / 共18页
Android日历方式显示的日期选择组件Word文档格式.docx_第4页
第4页 / 共18页
Android日历方式显示的日期选择组件Word文档格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

Android日历方式显示的日期选择组件Word文档格式.docx

《Android日历方式显示的日期选择组件Word文档格式.docx》由会员分享,可在线阅读,更多相关《Android日历方式显示的日期选择组件Word文档格式.docx(18页珍藏版)》请在冰豆网上搜索。

Android日历方式显示的日期选择组件Word文档格式.docx

37. 

publicclassDateWidgetextendsActivity{ 

38. 

privateArrayList<

DateWidgetDayCell>

days=newArrayList<

();

39. 

//privateSimpleDateFormatdateMonth=newSimpleDateFormat("

MMMMyyyy"

);

40. 

privateCalendarcalStartDate=Calendar.getInstance();

41. 

privateCalendarcalToday=Calendar.getInstance();

42. 

privateCalendarcalCalendar=Calendar.getInstance();

43. 

privateCalendarcalSelected=Calendar.getInstance();

44. 

LinearLayoutlayContent=null;

45. 

ButtonbtnPrev=null;

46. 

ButtonbtnToday=null;

47. 

ButtonbtnNext=null;

48. 

privateintiFirstDayOfWeek=Calendar.MONDAY;

49. 

privateintiMonthViewCurrentMonth=0;

50. 

privateintiMonthViewCurrentYear=0;

51. 

publicstaticfinalintSELECT_DATE_REQUEST=111;

52. 

privatestaticfinalintiDayCellSize=38;

53. 

privatestaticfinalintiDayHeaderHeight=24;

54. 

privatestaticfinalintiTotalWidth=(iDayCellSize*7);

55. 

privateTextViewtv;

56. 

privateintmYear;

57. 

privateintmMonth;

58. 

privateintmDay;

59. 

60. 

@Override 

61. 

publicvoidonCreate(Bundleicicle){ 

62. 

super.onCreate(icicle);

63. 

iFirstDayOfWeek=Calendar.MONDAY;

64. 

mYear=calSelected.get(Calendar.YEAR);

65. 

mMonth=calSelected.get(Calendar.MONTH);

66. 

mDay=calSelected.get(Calendar.DAY_OF_MONTH);

67. 

setContentView(generateContentView());

68. 

calStartDate=getCalendarStartDate();

69. 

DateWidgetDayCelldaySelected=updateCalendar();

70. 

updateControlsState();

71. 

if(daySelected!

=null) 

72. 

daySelected.requestFocus();

73. 

74. 

75. 

76. 

publicvoidonStart(){ 

77. 

super.onStart();

78. 

79. 

80. 

81. 

privateLinearLayoutcreateLayout(intiOrientation){ 

82. 

LinearLayoutlay=newLinearLayout(this);

83. 

lay.setLayoutParams(newLayoutParams( 

84. 

android.view.ViewGroup.LayoutParams.FILL_PARENT, 

85. 

android.view.ViewGroup.LayoutParams.WRAP_CONTENT));

86. 

lay.setOrientation(iOrientation);

87. 

returnlay;

88. 

89. 

90. 

privateButtoncreateButton(StringsText,intiWidth,intiHeight){ 

91. 

Buttonbtn=newButton(this);

92. 

btn.setText(sText);

93. 

btn.setLayoutParams(newLayoutParams(iWidth,iHeight));

94. 

returnbtn;

95. 

96. 

97. 

privatevoidgenerateTopButtons(LinearLayoutlayTopControls){ 

98. 

finalintiHorPadding=24;

99. 

finalintiSmallButtonWidth=60;

100. 

btnToday=createButton("

"

iTotalWidth-iSmallButtonWidth 

101. 

-iSmallButtonWidth, 

102. 

android.view.ViewGroup.LayoutParams.WRAP_CONTENT);

103. 

btnToday.setPadding(iHorPadding,btnToday.getPaddingTop(),iHorPadding, 

104. 

btnToday.getPaddingBottom());

105. 

btnToday.setBackgroundResource(android.R.drawable.btn_default_small);

106. 

107. 

SymbolButtonbtnPrev=newSymbolButton(this, 

108. 

SymbolButton.symbol.arrowLeft);

109. 

btnPrev.setLayoutParams(newLayoutParams(iSmallButtonWidth, 

110. 

111. 

btnPrev.setBackgroundResource(android.R.drawable.btn_default_small);

112. 

113. 

SymbolButtonbtnNext=newSymbolButton(this, 

114. 

SymbolButton.symbol.arrowRight);

115. 

btnNext.setLayoutParams(newLayoutParams(iSmallButtonWidth, 

116. 

117. 

btnNext.setBackgroundResource(android.R.drawable.btn_default_small);

118. 

119. 

//setevents 

120. 

btnPrev.setOnClickListener(newButton.OnClickListener(){ 

121. 

publicvoidonClick(Viewarg0){ 

122. 

setPrevViewItem();

123. 

124. 

});

125. 

btnToday.setOnClickListener(newButton.OnClickListener(){ 

126. 

127. 

128. 

setTodayViewItem();

129. 

Strings=calToday.get(Calendar.YEAR)+"

/"

130. 

+(calToday.get(Calendar.MONTH)+1);

131. 

btnToday.setText(s);

132. 

133. 

134. 

btnNext.setOnClickListener(newButton.OnClickListener(){ 

135. 

136. 

setNextViewItem();

137. 

138. 

139. 

140. 

layTopControls.setGravity(Gravity.CENTER_HORIZONTAL);

141. 

layTopControls.addView(btnPrev);

142. 

layTopControls.addView(btnToday);

143. 

layTopControls.addView(btnNext);

144. 

145. 

146. 

privateViewgenerateContentView(){ 

147. 

LinearLayoutlayMain=createLayout(LinearLayout.VERTICAL);

148. 

layMain.setPadding(8,8,8,8);

149. 

LinearLayoutlayTopControls=createLayout(LinearLayout.HORIZONTAL);

150. 

151. 

layContent=createLayout(LinearLayout.VERTICAL);

152. 

layContent.setPadding(20,0,20,0);

153. 

generateTopButtons(layTopControls);

154. 

generateCalendar(layContent);

155. 

layMain.addView(layTopControls);

156. 

layMain.addView(layContent);

157. 

158. 

tv=newTextView(this);

159. 

layMain.addView(tv);

160. 

returnlayMain;

161. 

162. 

163. 

privateViewgenerateCalendarRow(){ 

164. 

LinearLayoutlayRow=createLayout(LinearLayout.HORIZONTAL);

165. 

for(intiDay=0;

iDay<

7;

iDay++){ 

166. 

DateWidgetDayCelldayCell=newDateWidgetDayCell(this, 

167. 

iDayCellSize,iDayCellSize);

168. 

dayCell.setItemClick(mOnDayCellClick);

169. 

days.add(dayCell);

170. 

layRow.addView(dayCell);

171. 

172. 

returnlayRow;

173. 

174. 

175. 

privateViewgenerateCalendarHeader(){ 

176. 

177. 

178. 

DateWidgetDayHeaderday=newDateWidgetDayHeader(this, 

179. 

iDayCellSize,iDayHeaderHeight);

180. 

finalintiWeekDay=DayStyle.getWeekDay(iDay,iFirstDayOfWeek);

181. 

day.setData(iWeekDay);

182. 

layRow.addView(day);

183. 

184. 

185. 

186. 

187. 

privatevoidgenerateCalendar(LinearLayoutlayContent){ 

188. 

layContent.addView(generateCalendarHeader());

189. 

days.clear();

190. 

for(intiRow=0;

iRow<

6;

iRow++){ 

191. 

layContent.addView(generateCalendarRow());

192. 

193. 

194. 

195. 

privateCalendargetCalendarStartDate(){ 

196. 

calToday.setTimeInMillis(System.currentTimeMillis());

197. 

calToday.setFirstDayOfWeek(iFirstDayOfWeek);

198. 

199. 

if(calSelected.getTimeInMillis()==0){ 

200. 

calStartDate.setTimeInMillis(System.currentTimeMillis());

201. 

calStartDate.setFirstDayOfWeek(iFirstDayOfWeek);

202. 

}else{ 

203. 

calStartDate.setTimeInMillis(calSelected.getTimeInMillis());

204. 

205. 

206. 

207. 

UpdateStartDateForMonth();

208. 

209. 

returncalStartDate;

210. 

211. 

212. 

privateDateWidgetDayCellupdateCalendar(){ 

213. 

DateWidgetDayCelldaySelected=null;

214. 

booleanbSelected=false;

215. 

finalbooleanbIsSelection=(calSelected.getTimeInMillis()!

=0);

216. 

finalintiSelectedYear=calSelected.get(Calendar.YEAR);

217. 

finalintiSelectedMonth=calSelected.get(Calendar.MONTH);

218. 

finalintiSelectedDay=calSelected.get(Calendar.DAY_OF_MONTH);

219. 

calCalendar.setTimeInMillis(calStartDate.getTimeInMillis());

220. 

for(inti=0;

i<

days.size();

i++){ 

221. 

finalintiYear=calCalendar.get(Calendar.YEAR);

222. 

finalintiMonth=calCalendar.get(Calendar.MONTH);

223. 

finalintiDay=calCalendar.get(Calendar.DAY_OF_MONTH);

224. 

finalintiDayOfWeek=calCalendar.get(Calendar.DAY_OF_WEEK);

225. 

DateWidgetDayCelldayCell=days.get(i);

226. 

//checktoday 

227. 

booleanbToday=false;

228. 

if(calToday.get(Calendar.YEAR)==iYear) 

229. 

if(calToday.get(Calendar.MONTH)==iMonth) 

230. 

if(calToday.get(Calendar.DAY_OF_MONTH)==iDay) 

231. 

bToday=true;

232. 

//checkholiday 

233. 

booleanbHoliday=false;

234. 

if((iDayOfWeek==Calendar.SATURDAY) 

235

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1