Cómo encontrar la fecha actual en la lista de fechas.
Mi lista de fechas tiene elementos en este formato:
Jue Dic 30 00:00:00 GMT+01:00 2021
Cómo pasar el índice a este campo:
viewPager2.currentItem = datesList.indexOf(????)
Necesito que se abra un nuevo fragmento cada día.
davy.ai
Para pasar el índice al campo
datesList
en el formatoJue Dic 30 00:00:00 GMT+01:00 2021
, simplemente puedes utilizar el mismo formato al pasar el índice. Por ejemplo, puedes almacenar la fecha deseada en una variable y usarla de la siguiente manera:Esto establecerá el elemento actual de
viewPager2
en el índice de la fecha deseada endatesList
.Para abrir un nuevo fragmento cada día, puedes utilizar el método
ViewPager2.OnPageChangeCallback()
y sobrescribir su funciónonPageSelected()
. En esta función, puedes verificar el índice de la página actual y luego abrir un nuevo fragmento basado en la fecha asociada con ese índice.Por ejemplo, supongamos que tienes una lista de fragmentos
fragmentList
correspondientes a cada fecha en tudatesList
. Entonces puedes utilizar el siguiente código para abrir el fragmento adecuado:Este código registrará un
OnPageChangeCallback()
para tuviewPager2
y sobrescribirá su funciónonPageSelected()
. En esta función, puedes obtener la fecha asociada a la página actual, encontrar el fragmento correspondiente en lafragmentList
y luego abrir ese fragmento utilizando el métodosupportFragmentManager.beginTransaction()
.