java日历事件处理_日历表的事件处理和管理(刘静)
1 //添加gridview,显示具体的日期
2 @SuppressLint("ResourceAsColor")3 private voidaddGridView() {4 LinearLayout.LayoutParams params = newLinearLayout.LayoutParams(5 LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);6 //取得屏幕的宽度和高度
7 WindowManager windowManager =getWindowManager();8 Display display =windowManager.getDefaultDisplay();9 int Width =display.getWidth();10 int Height =display.getHeight();11
12 Log.d(Tag, "屏幕分辨率=="+"height*weight"+Height+Width);13
14 gridView = new GridView(this);15 gridView.setNumColumns(7);16 gridView.setColumnWidth(46);17 if(Width == 480 && Height == 800){18 gridView.setColumnWidth(69);19 }else if(Width==800&&Height==1280){20 gridView.setColumnWidth(69);21 }22
23
24 gridView.setGravity(Gravity.CENTER_VERTICAL);25 gridView.setSelector(new ColorDrawable(Color.TRANSPARENT)); //去除gridView边框
26 gridView.setVerticalSpacing(1);27 gridView.setHorizontalSpacing(1);28 gridView.setBackgroundResource(R.drawable.gridview_bk);29 gridView.setOnTouchListener(newOnTouchListener() {30 //将gridview中的触摸事件回传给gestureDetector
31
32 public booleanonTouch(View v, MotionEvent event) {33 //TODO Auto-generated method stub
34 return CalendarActivity.this.gestureDetector35 .onTouchEvent(event);36 }37 });38
39
40 gridView.setOnItemClickListener(newOnItemClickListener() {41 //gridView中的每一个item的点击事件
42
43 public void onItemClick(AdapterView> arg0, View arg1, intposition,44 longarg3) {45 //点击任何一个item,得到这个item的日期(排除点击的是周日到周六(点击不响应))
46 int startPosition =calV.getStartPositon();47 int endPosition =calV.getEndPosition();48 if(startPosition <= position && position <=endPosition){49 String scheduleDay = calV.getDateByClickItem(position).split("\\.")[0]; //这一天的阳历50 //String scheduleLunarDay = calV.getDateByClickItem(position).split("\\.")[1];//这一天的阴历
51 String scheduleYear =calV.getShowYear();52 String scheduleMonth =calV.getShowMonth();53 String week = "";54
55 Log.i("日程历史浏览", scheduleDay);56
57 //通过日期查询这一天是否被标记,如果标记了日程就查询出这天的所有日程信息
58 scheduleIDs =dao.getScheduleByTagDate(Integer.parseInt(scheduleYear)59 , Integer.parseInt(scheduleMonth), Integer.parseInt(scheduleDay));60
61 //得到这一天是星期几
62 switch(position%7){63 case 0:64 week = "星期日";65 break;66 case 1:67 week = "星期一";68 break;69 case 2:70 week = "星期二";71 break;72 case 3:73 week = "星期三";74 break;75 case 4:76 week = "星期四";77 break;78 case 5:79 week = "星期五";80 break;81 case 6:82 week = "星期六";83 break;84 }85
86 scheduleDate = new ArrayList();87 scheduleDate.add(scheduleYear);88 scheduleDate.add(scheduleMonth);89 scheduleDate.add(scheduleDay);90 scheduleDate.add(week);91
92
93 LayoutInflater inflater=getLayoutInflater();94 View linearlayout= inflater.inflate(R.layout.schedule_detail, null);95 add=(Button)linearlayout.findViewById(R.id.btn_add);96 quit=(Button) linearlayout.findViewById(R.id.btn_back);97 day_tv=(TextView) linearlayout.findViewById(R.id.todayDate);98 launarDay=(TextView)linearlayout.findViewById(R.id.tv_launar);99 schdule_tip=(com.dream.tdzhushou.base.BorderTextView)linearlayout.findViewById(R.id.schdule_tip);100 listView=(ListView)linearlayout.findViewById(R.id.schedulelist1);101 //星期
102 weekday=(TextView)linearlayout.findViewById(R.id.dayofweek);103 //农历日期
104 lunarTime=(TextView)linearlayout.findViewById(R.id.lunarTime);105 list=(ListView)linearlayout.findViewById(R.id.schedulelist1);106
107 dateInfo=scheduleYear+"年"+scheduleMonth+"月"+scheduleDay+"日";108 //添加农历信息
109 String scheduleLunarDay =getLunarDay(Integer.parseInt(scheduleYear),110 Integer.parseInt(scheduleMonth), Integer.parseInt(scheduleDay));111
112 Log.i("LunarDay", scheduleLunarDay);113 //设置选中的日期的阳历,星期和农历信息
114 day_tv.setText(dateInfo);115 weekday.setText(week);116 addLunarDayInfo(lunarTime);117 launarDay.setText( scheduleLunarDay);118
119 Log.i("scheduleDate", "scheduleDate的所有信息:"+scheduleDate);120 //添加日程按钮121 //TableLayout dialog_tab=(TableLayout) linearlayout.findViewById(R.id.dialog_tab);
122 add.setOnClickListener(newOnClickListener() {123
124 public voidonClick(View v) {125 //TODO Auto-generated method stub
126 if(builder!=null&&builder.isShowing()){127 builder.dismiss();128 Intent intent = newIntent();129 intent.putStringArrayListExtra("scheduleDate", scheduleDate);130 intent.setClass(CalendarActivity.this, ScheduleViewAddActivity.class);131 startActivity(intent);132 }133 }134 });135 //返回按钮
136 quit.setOnClickListener(newOnClickListener() {137
138 public voidonClick(View v) {139 //TODO Auto-generated method stub
140 if(builder!=null&&builder.isShowing()){141 builder.dismiss();142 }143 }144 });145
146 //如果被标记,则加载相应的日程信息列表
147 if(scheduleIDs != null && scheduleIDs.length > 0){148
149
150 //list.setAdapter(new MyAdapter());
151 View inflate=getLayoutInflater().inflate(R.layout.schedule_detail_item, null);152 //通过arraylist绑定数据导listview中去
153 ArrayList> Data = new ArrayList>();154 ScheduleDAO dao=new ScheduleDAO(CalendarActivity.this);155 String time="";156 String content="";157 for(int i=0;i
162 time=dateInfo+" "+scheduleVO.getTime();163 content=scheduleVO.getScheduleContent();164
165
166
167 HashMap map=new HashMap();168 map.put("date", time);169 map.put("content", content);170 Data.add(map);171
172 }173 String from[]={"date","content"};174 int to[]={R.id.itemTime,R.id.itemContent};175
176 SimpleAdapter adapter=new SimpleAdapter(CalendarActivity.this, Data, R.layout.schedule_detail_item, from, to);177
178 list.setAdapter(adapter);179
180 //点击list的item相应事件181 //list.setOnClickListener(CalendarActivity.this);182 //list.setOnLongClickListener(CalendarActivity.this);
183
184
185 }else{ //如果没有标记位直接则跟换为“暂无安排”
186
187
188 schdule_tip.setText("暂无安排");189 listView.setVisibility(View.INVISIBLE);190
191
192 }193
194 builder = new Dialog(CalendarActivity.this,R.style.FullScreenDialog);195 builder.setContentView(linearlayout);196 WindowManager windowManager =getWindowManager();197 Display display =windowManager.getDefaultDisplay();198 WindowManager.LayoutParams lp =builder.getWindow().getAttributes();199 lp.width = (int)(display.getWidth()); //设置宽度
200 lp.height=display.getHeight();201 builder.getWindow().setAttributes(lp);202 builder.setCanceledOnTouchOutside(true);203 builder.show();204
205 list.setOnItemClickListener(newOnItemClickListener() {206
207 @Override208 public void onItemClick(AdapterView>adapterview,209 View view, int position, longid) {210
211
212 Log.i("日程item点击", "第"+position+"个item");213 Intent intent=newIntent();214
215 if(view!=null){216
217 HashMap map=(HashMap) adapterview.getItemAtPosition(position);218
219 ScheduleVO scheduleVO= (ScheduleVO) view.getTag();//
220 Log.i("scheduleVo", "scheduleVO的值="+scheduleVO);221
222 if(scheduleDate!=null){223 //intent.putStringArrayListExtra("scheduleDate", scheduleDate);
224 intent.setClass(CalendarActivity.this,ScheduleInfoDetailActivity.class);225 intent.putStringArrayListExtra("scheduleDate", scheduleDate);226 intent.putExtra("scheduleVO", scheduleVO);227
228 Log.i("scheduleVo", "往intent存放的值"+scheduleVO);229 startActivity(intent);230
231 }232 }233
234 }235 });236 }237 }238 });239 gridView.setLayoutParams(params);240 }241
java日历事件处理_日历表的事件处理和管理(刘静)相关推荐
- Java日历打印_使用java 打印日历
package hangshu; /* * 打印从1900年到2.year年的日历 */ import java.util.Scanner; public class Calender { publi ...
- java 日历工具_【Java】太强了,这款开源日历工具库堪称神器!
首页 专栏 javascript 文章详情 0 太强了,这款开源日历工具库堪称神器! Github导航站发布于 今天 02:03 大家好,我是为广大程序员兄弟操碎了心的小编,每天推荐一个小工具/源码, ...
- java日历记事本_求java实现日历记事本
import java.util.Scanner;/** * 实现日历的方法dayin * */public class printCalenderDemo {public static int ye ...
- java 日历记事本_用Java实现日历记事本.doc
用Java实现日历记事本 1. 实验目的 掌握RandomAccessFile类的使用:掌握字符输入.输出流和缓冲输入.输出流的使用. 2. 实验要求 实验前,应事先熟悉相关知识点,拟出相应的实验操作 ...
- java日历记事本_用java写的日历记事本代码?
展开全部 详细代码 //CalendarWindow类: import javax.swing.*; import java.awt.*; import java.awt.event.*; impor ...
- java 日历_java建立日历表
1 建立日历表主要步骤 1.1 获取输入年距1900年1月1日(星期一)的天数. 1.2 判断输入月的第一天是星期几. 1.3 获取输入月的总天数. 1.4 生成日历表 2 代码 2.1 判断闰年 ...
- Java水费代收_基于jsp的水费管理-JavaEE实现水费管理 - java项目源码
基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的水费管理, 该项目可用各类java课程设计大作业中, 水费管理的系统架构分为前后台两部分, 最终实现在线上进行水费 ...
- java 自动化编译_构建Jenkins自动化编译管理环境
今天研究了一下Jenkins,有了一个粗浅的认识,顺手把构建的过程说一下,后续慢慢补充: (1)Secure CRT 连接到Linux服务器 要注意的一点是,要搞好一个文件传输的路子,否则不好传东西. ...
- java swing事件_第四节 Java Swing事件处理
第四节:事件处理 一个图形界面完的成只是程序开发中起步的工作,因为要想让每一个组件都发挥其作用,就必须对所有的组件进行事件处理.那么什么是事件处理,所谓事件就表示一个对象发生状态变化.例如,每当按下一 ...
最新文章
- C2065	“__m128d”: 未声明的标识符
- 【干货】写给产品经理和设计师的用户体验知识
- php中引入shiro,基于shiro的自定义注解的扩展-图文详解
- php粒子背景特效_粒子背景特效Particleground.js插件使用解析_蓝戒的博客
- ios 构建版本一直在处理中_iOS -打包上传成功,在构建版本一直刷不出来
- Phonegap 环境配置
- java 铁路的运费与路程_Java语言程序设计2(16)
- 嵌套高度问题_excel查找技巧:嵌套函数在区间查找中的应用解析
- python 微信聊天机器人_python操作微信自动发消息的实现(微信聊天机器人)
- jquery插件整理篇(九)数据验证类
- 用户故事与敏捷方法—迭代计划
- lwip---(七)ARP表查询
- java计算机毕业设计西藏民族大学论文管理系统源码+数据库+系统+lw文档+mybatis+运行部署
- OAuth 2.0 授权认证详解
- Leetcode SQL 刷题学习:175. 组合两个表
- 20190919CF训练
- 本地开发公众号获取code
- 网络编程之端口:端口号为什么常见是8000、8080、8888...
- siri快捷指令_如何使用siri快捷方式来记录警察的遭遇
- VSCode安装教程【Windows系统】
热门文章
- Spring Tools 4 for Eclipse 下载
- SpringBoot整合Editor.md实现Markdown编辑器
- android重新编译res,使用 gradle 在编译时动态设置 Android resValue / BuildConfig / Manifes中lt;meta-datagt;变量的值...
- 厦门理工C语言实验报告8,厦门理工c语言数据结构实验
- npoi 所有列调整为一页_别再浪费纸了,一张纸就能打印Word、Excel、PPT所有内容,真厉害...
- matlab 求n 的和,MATLAB求1的阶乘加到n的阶乘和 不要现有的函数,要自己编写出来的...
- c++ raiseexception产生异常_Day17_异常,线程
- BugkuCTF-Crypto题告诉你个秘密
- 属性子集选择的基本启发方法_一文看懂数据预处理最重要的3种思想和方法
- oracle非常量不能用于privot_Oracle 行列转换函数pivot、unpivot的使用(二)