Witam,
próbuję stworzyć coś w rodzaju wiecznego kalendarza ale głównie chodzi o to, aby użytkownik wpisując date w formacie yyyy:mm zobaczył w kalendarzu wpisany miesiąc i rok. Jak narazie stworzyłem zwykły kalendarz oraz kalendarz na bazie datePicker. Chciałbym jednak, żeby wyświetlił się zadany miesiąc a nie aktualna data.
Niestety nie znalazłem metod na pobieranie wartości wpisanych i ustawianie ich w kalendarzu. W internecie natomiast pełno aplikacji, gdzie w kalendarzu wybieramy date i takowa się wyświetla, a mi chodzi o odwrotny efekt. Wrzucam kod i screen
package com.example.mycalendar;
import androidx.appcompat.app.AppCompatActivity;
import android.app.DatePickerDialog;
import android.os.Bundle;
import android.view.View;
import android.widget.DatePicker;
import android.widget.TextView;
import java.util.Calendar;
public class MainActivity extends AppCompatActivity implements DatePickerDialog.OnDateSetListener {
private TextView data;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
data = findViewById(R.id.data);
findViewById(R.id.pokaz_date).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
showDatePickerDialog();
}
});
}
private void showDatePickerDialog(){
DatePickerDialog datePickerDialog = new DatePickerDialog(
this,
this,
Calendar.getInstance().get(Calendar.YEAR),
Calendar.getInstance().get(Calendar.MONTH),
Calendar.getInstance().get(Calendar.DAY_OF_MONTH)
);
datePickerDialog.show();
}
@Override
public void onDateSet(DatePicker view, int rok, int miesiac, int dzien) {
String date = "Dzień/Miesiąc/Rok: " + dzien + "/" + miesiac + "/" + rok;
data.setText(date);
}
}