public class BossPage extends AppCompatActivity {
// 변수생략
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_boss_page);
// 월별 캘린더 뷰 객체 참조
// 어댑터 생성
monthView = (GridView) findViewById(R.id.monthView);
monthViewAdapter = new MonthAdapter(this); // 어댑터
monthView.setAdapter(monthViewAdapter);
// 달력 누르면 아래에 일정 뜨게
lv = (ListView)findViewById(listView);
// 그룹 정보 불러오기
mTextViewResult = (TextView)findViewById(R.id.result_text);
// 그룹리스트 DB 갖고오기
GetData2 task = new GetData2(); // 서버에서 데이터 갖고오기
task.execute("http://211.253.9.84/getgrouplist.php");
// 리스너 설정
// 캘린더 버튼 누르면
monthView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
// 현재 선택한 일자 정보 표시
curItem = (MonthItem) monthViewAdapter.getItem(position);
curDay = curItem.getDay();
// 서버 - 정보 갖고오기
GetData task = new GetData();
task.execute("http://211.253.9.84/getschedule.php");
}
});
public void onClick(View v){
switch(v.getId()){
// 일정 추가 코드
case R.id.plus :
LayoutInflater inflater = (LayoutInflater) getLayoutInflater();
View customView = inflater.inflate(R.layout.activity_datetimepicker, null);
final DatePicker dpStartDate = (DatePicker) customView.findViewById(R.id.dpStartDate);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(customView); // Set the view of the dialog to your custom layout
builder.setTitle("일정추가");
View view = (View) getLayoutInflater().inflate(R.layout.activity_datetimepicker, null);
// 서버 성공하면 insert
mTextViewResult = (TextView)findViewById(R.id.result_text);
builder.setPositiveButton("추가", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
startYear = dpStartDate.getYear();
startMonth = dpStartDate.getMonth() + 1;
startDay = dpStartDate.getDayOfMonth();
edit = (EditText)((AlertDialog)dialog).findViewById(R.id.editText2);
content = edit.getText().toString(); // 일정내용
String y = String.valueOf(startYear);
String m = String.valueOf(startMonth);
String d = String.valueOf(startDay);
String date_D = y + m + d;
InsertData task = new InsertData();
task.execute(date_D, content);
// 후에 추가하면 동그라미 버튼 나타나게 or 색이 바뀌게
dialog.dismiss();
}});
builder.setNegativeButton("취소", null);
builder.create().show();
break;
}
}
// 리스트뷰 업데이트
public void updateLv(){
adapter= new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,as);
lv.setAdapter(adapter);
}
안녕하세요 갓 안드로이드를 시작한 초보개발자입니다.
캘린더의 날짜를 누르면 캘린더 아래 리스트뷰에 그 날짜에 맞는
일정을 추가 시키고 싶습니다만, 마지막으로 추가했던 날짜만
제대로 기능을 합니다. ex) 순서대로 8월 13일에 "밥" 이라는 일정을 추가하고
다음으로 8월 15일에 "요리" 라는 일정을 추가하면 8월 15일에만 제대로 리스트뷰가 뜹니다
서버에는 문제가 없는거 같은데 왜 이런걸까요?
서버코드가 필요하시다면 올려드리겠습니다. 도와주세요.