안녕하세요! 현재 안드로이드 스튜디오를 통해서 날짜별로 그 일정에 맞는 축구 경기를 보여주게 하는 식의 어플을 만들고자 하는데 Horizontal Date Picker를 통해서 날짜를 이동하면서 볼 생각으로 구현중입니다. 현재 Date Picker까진 구현을 했는데 여기에 OnDateSelected 함수를 통해서 데이터와 날짜 연동을 해야할 것 같은데 도저히 어떻게 연동을 해야할지 감이 안잡히네요 ㅠㅠ 혹시라도 아시는분있으면 제발 답변 부탁드립니다...
아래는 전체 소스코드입니다.
@RequiresApi(api = Build.VERSION_CODES.N)
public class FirstFragment<horizontalCalendar, root> extends Fragment implements DatePickerListener {
.....
HorizontalPicker picker = (HorizontalPicker)root.findViewById(R.id.datePicker);
picker.setListener(this)
.setDays(120)
.setOffset(7)
.setDateSelectedColor(Color.DKGRAY)
.setDateSelectedTextColor(Color.DKGRAY)
.setMonthAndYearTextColor(Color.DKGRAY)
.setTodayButtonTextColor(getResources().getColor(R.color.colorPrimary))
.setTodayDateTextColor(getResources().getColor(R.color.colorPrimary))
.setTodayDateBackgroundColor(Color.GRAY)
.setUnselectedDayTextColor(Color.DKGRAY)
.setDayOfWeekTextColor(Color.DKGRAY)
.setUnselectedDayTextColor(getResources().getColor(R.color.primaryTextColor))
.showTodayButton(false)
.init();
picker.setBackgroundColor(Color.LTGRAY);
picker.setDate(new DateTime());
....
getData();
return root;
}
private void getData() {
product_lists.add(new Product_List(1, "스페인 프리메라리가", "세비야 vs 레알 베티스" , "2020.06.12 05:00", "https://pngimage.net/wp-content/uploads/2018/06/sevilla-fc-logo-png-2.png",
"https://pngimage.net/wp-content/uploads/2018/06/real-betis-escudo-png-5.png"));
product_lists.add(new Product_List(2, "스페인 프리메라리가", "그라나다 vs 헤타페" , "2020.06.13 02:30", "https://files.proyectoclubes.com/granada/201612/662x372c_22140637662x372a_15120636escudo-web.jpg",
"https://1.bp.blogspot.com/-R8eElyn20qI/U-8wr94iRfI/AAAAAAAADa8/xzMGNT_zFhA/s72-c/Logo%2BGetafe%2BCF.png"));
product_lists.add(new Product_List(3, " 독일 분데스리가", "호펜하임 vs 라이프치히" , "2020.06.13 03:30", "https://pngimage.net/wp-content/uploads/2018/06/hoffenheim-png-3.png",
"https://pngimage.net/wp-content/uploads/2018/06/rb-leipzig-logo-png-1.png"));
product_lists.add(new Product_List(4, "스페인 프리메라리가", " 발렌시아 vs 레반테" , "2020.06.13 05:00", "https://pngimage.net/wp-content/uploads/2018/06/valencia-cf-png-4.png",
"http://3.bp.blogspot.com/-IBRaWX6bryU/VmNNHHJMSMI/AAAAAAAACfM/nPI87qrdx1Y/s320/Levante%2BUD%2BLogo.png"));
product_lists.add(new Product_List(5, "스페인 프리메라리가", " 에스파뇰 vs 알라베스" , "2020.06.13 21:00", "https://pngimage.net/wp-content/uploads/2018/06/rcd-espanyol-png-2.png",
"https://pngimage.net/wp-content/uploads/2018/05/alaves-logo-png-6.png"));
product_lists.add(new Product_List(6, " 독일 분데스리가", "뒤셀도르프 vs 도르트문트" , "2020.06.13 22:30", "https://2.bp.blogspot.com/-AyfT671coEE/U_YH-TnQeTI/AAAAAAAADpo/99L8_eOEBck/s1600/Logo%2BFortuna%2BDusselsdorf.png",
"https://pngimage.net/wp-content/uploads/2018/05/borussia-dortmund-logo-png-7.png"));
setupData(product_lists);
}
private void setupData(List<Product_List> product_lists) {
adapter=new ProductAdapter(product_lists,getContext());
adapter.notifyDataSetChanged();
recyclerView.setAdapter(adapter);
}
@Override
public void onDateSelected(DateTime dateSelected) {
Toast.makeText(getContext(),dateSelected.toString(),Toast.LENGTH_SHORT).show();
}
}