主界面点击加号,编辑之后:*(添加当日日记)
本来第九天的框框是没有的,编辑返回之后出现,设置加号的点击事件,启动编辑的活动,由于我们使用全局变量,所以可以在编辑界面直接改list.
最核心的思路就是新建一个对象,然后在list的最后面插入。
思路:设置主界面下栏加号图片的点击事件,开启editActivity。并用intent传递数据,传递数据的时候,day 和 星期都相应增加一。
在editactivity中获取intent数据,并且利用它们构造一个新的day变量,插入list中即可。
注意:editActivity,有可能是以前的日记添加(点击小黑点进入),由于是这种情况的处理代码是遍历list并判断,是不可能找到当前新添加那一天的,但是当前新加的那一天需要判断,而且要注意string的判断,不要忘记判断非空,否则会空指针异常。
if(!(ad==null||ad.length()<=0) && ad.equals("add")) { Day day = new Day(w,da,inputText); ListAll.data.add(day); } 点击事件的核心代码: String sday = Integer.toString(Integer.parseInt(ListAll.data.get(ListAll.data.size()-1).getDay())+1); String sweek = ListAll.data.get(ListAll.data.size()-1).getWeek(); if(sweek.equals("MON")) sweek = "TUE"; else if(sweek.equals("TUE")) sweek = "WED"; else if(sweek.equals("WED")) sweek = "THU"; else if(sweek.equals("THU")) sweek = "FRI"; else if(sweek.equals("FRI")) sweek = "SAT"; else if(sweek.equals("SAT")) sweek = "SUN"; else if(sweek.equals("SUN")) sweek = "MON"; Intent intent = new Intent(MainActivity.this, EditActivity.class); intent.putExtra("week2",sweek); intent.putExtra("day2", sday); intent.putExtra("add","add"); intent.putExtra("year2",yearmenu); intent.putExtra("month2", monthmenu); startActivity(intent);另:红色的显示:
(颜色的改变) else if(w.equals("SUN")) { w2 = "SUNDAY"; tv1.setTextColor(Color.rgb(255, 0, 0)); }