安卓小日记练习(11)listview的动态更新和android的字符串处理

    xiaoxiao2023-03-25  4

    主界面点击加号,编辑之后:*(添加当日日记)

    本来第九天的框框是没有的,编辑返回之后出现,设置加号的点击事件,启动编辑的活动,由于我们使用全局变量,所以可以在编辑界面直接改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)); }

    转载请注明原文地址: https://ju.6miu.com/read-1203930.html
    最新回复(0)