질문을 읽어주셔서 감사합니다!!ㅜㅜ 현재 안드로이드 시간표어플을 구현중에 있습니다
그림과 같이 그리드 뷰로 만들어져 있는 상태에서 각 셀을 롱 클릭하게 되면 인텐트를 사용하여
과목 등과 스피너를 통해 색상을 고를 수 있도록 구현해놓은 상태입니다.
그리드 뷰에는 과목명만 나오고 나머지 강의실등은 셀을 클릭 했을 때 토스트 메시지를 주어 나타냈습니다.
소스를 보시면 GET STRING 과 RESULT를 통해 인텐트로 부터 값들을 받앗구요
출력할 것은 출력하고 문제는 색상인데 소스 처럼 하려는데 텍스트들만 나오고 색은 변경이 되질 않네요ㅜㅜ
해결 방법이나 조언 좀 해주시면 감사하겠습니다ㅜㅜ
View mTempView;
timetable.setOnItemLongClickListener(new OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> parent, View v,
int position, long id) {
// TODO Auto-generated method stub
Position = position;
if(Position%6==0 && Position<6){
v.setClickable(false);
}else{
callActivity(Timeadapter.Context,Position);
}
parent.getChildAt(position);
mTempView=parent.getChildAt(position);
return false;
}
});
timetable.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v,
int position, long id) {
mParent=parent;
Toast.makeText(TimeActivity.this, "강 의: "+Str[position]+"\n강의실: "+Str1[position]+"\n교 수: "+Str2[position], Toast.LENGTH_SHORT).show();
}
});
}
public void callActivity(Context context, int selectedIndex) {
Intent intent = new Intent(context, Timeset.class);
startActivityForResult(intent, GET_STRING);
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == GET_STRING) {
if (resultCode == RESULT_OK) {
str =String.format("%s",data.getStringExtra("INPUT_TEXT"));
Str[Position]=str;
str1 =String.format("%s",data.getStringExtra("INPUT_TEXT1"));
Str1[Position]=str1;
str2 =String.format("%s",data.getStringExtra("INPUT_TEXT2"));
Str2[Position]=str2;
spi1=String.format("%s",data.getStringExtra("SPINNER1"));
System.out.println(spi1);
TimeList.set(Position, str);
color[Position]= spi1;
if(color[Position].equals("RED")){
mTempView.setBackgroundColor(Color.RED);
}else if(spi1.equals("BLUE")){
mTempView.setBackgroundColor(Color.BLUE);
}else if(spi1.equals("GREEN")){
mTempView.setBackgroundColor(Color.GREEN);
}else if(spi1.equals("YELLOW")){
mTempView.setBackgroundColor(Color.YELLOW);
}
System.out.println(color[Position]);
Log.i("컬리는",mTempView.toString()+spi1);
timetable.setAdapter(Timeadapter);
}
}
}
