1. 주별 스케줄에 내용 일정 있으면 - 달력에 해당 요일에 색칠을 하구요
2. 월별 스케줄에서 특별 일정을 하면 - 날짜 위에 ★모양 이미지를 넣었는데요
여기까지는 했는데
월별스케줄과 주별스케줄이 겹칠 때가 문제입니다.
색칠된 것 위에 ★을 넣어야 하는데
두가지 조건을(월별에서 특별일정 + 주별 일정) 어떻게 받아야 할까요???
1.
int test = info.monthTotal;
for (int i = 0; i < 42;i++)
{
if(info.weekIndex != -1) //한번이라도 위클리에 내용있는지
{
if(info.dayCount[i % 7] > 0) // 내용있으면 어느 요일에? (7개 배열로)
{
TextView tv = ((TextView)vec.get(i));
if(tv != null){
if(!tv.getText().toString().equals(""))
tv.setBackgroundColor(Color.rgb(255,228,225)); // 텍스트에 글자있고 내용있으면 색칠
}
}
}
}
2.
int iDate = 1;
for( int i = firstDay ; i < firstDay + totDays; i++ ){
TextView tv = ((TextView)vec.get( i ));
tv.setText( String.valueOf( iDate++ ) );
for(int j=0; j<mData.size(); j++)
{ // 현재 날짜에 해당하는 데이터가 있으면 배경색을 바꿔준다
ScheduleData item = mData.get(j);
String[] strDay = item.getDate().split("-");
if((String.format("%02d", iDate-1)).equals(strDay[2])){
((TextView)vec.get(i)).setBackgroundResource(R.drawable.star);
break;
}
1, 2 어떻게 조건을 합쳐야 하나요??
쫌 귀챦을 수 있어도...
불리언 몇개 새로 만들고..체크 하면 될듯 합니다.
int test = info.monthTotal;
boolean b_1; //<==================
boolean b_2; //<==================
for (int i = 0; i < 42;i++)
{
.....
b_1=false; //<==================
if(!tv.getText().toString().equals(""))
//tv.setBackgroundColor(Color.rgb(255,228,225)); // 텍스트에 글자있고 내용있으면 색칠
b_1=true;
.....
b_2=false; //<==================
if((String.format("%02d", iDate-1)).equals(strDay[2])){
// ((TextView)vec.get(i)).setBackgroundResource(R.drawable.star);
b_2=true; //<==================
.........
........
void Check_b(){ //<==================
if(b_1){
if(b_2){
......
}
else{
.....
}
}
else{
if(b_2){
......
}
else{
.....
}
}
}
같은 텍스트뷰에 색칠하거나 별을 설정하시는거라면 차라리 뷰를 나누시는게 속 편할꺼라생각됩니다..