Android
Selektory daty i godziny
Szukaj…
Materiał DatePicker
dodaj poniżej zależności do pliku build.gradle
w sekcji zależności. (jest to nieoficjalna biblioteka do wyboru daty)
compile 'com.wdullaer:materialdatetimepicker:2.3.0'
Teraz musimy otworzyć DatePicker
na zdarzeniu Click Button.
Więc stwórz jeden przycisk na pliku xml jak poniżej.
<Button
android:id="@+id/dialog_bt_date"
android:layout_below="@+id/resetButton"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:textColor="#FF000000"
android:gravity="center"
android:text="DATE"/>
i w MainActivity używaj w ten sposób.
public class MainActivity extends AppCompatActivity implements DatePickerDialog.OnDateSetListener{
Button button;
Calendar calendar ;
DatePickerDialog datePickerDialog ;
int Year, Month, Day ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
calendar = Calendar.getInstance();
Year = calendar.get(Calendar.YEAR) ;
Month = calendar.get(Calendar.MONTH);
Day = calendar.get(Calendar.DAY_OF_MONTH);
Button dialog_bt_date = (Button)findViewById(R.id.dialog_bt_date);
dialog_bt_date.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
datePickerDialog = DatePickerDialog.newInstance(MainActivity.this, Year, Month, Day);
datePickerDialog.setThemeDark(false);
datePickerDialog.showYearPickerFirst(false);
datePickerDialog.setAccentColor(Color.parseColor("#0072BA"));
datePickerDialog.setTitle("Select Date From DatePickerDialog");
datePickerDialog.show(getFragmentManager(), "DatePickerDialog");
}
});
}
@Override
public void onDateSet(DatePickerDialog view, int Year, int Month, int Day) {
String date = "Selected Date : " + Day + "-" + Month + "-" + Year;
Toast.makeText(MainActivity.this, date, Toast.LENGTH_LONG).show();
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
getMenuInflater().inflate(R.menu.abc_main_menu, menu);
return true;
}
}
Wynik :
Okno wyboru daty
To okno dialogowe monitujące użytkownika o wybranie daty za pomocą DatePicker
. Okno dialogowe wymaga kontekstu, początkowego roku, miesiąca i dnia, aby wyświetlić okno dialogowe z datą rozpoczęcia. Gdy użytkownik wybiera datę, DatePickerDialog.OnDateSetListener
funkcję zwrotną za pośrednictwem DatePickerDialog.OnDateSetListener
.
public void showDatePicker(Context context,int initialYear, int initialMonth, int initialDay) {
DatePickerDialog datePickerDialog = new DatePickerDialog(context,
new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker datepicker,int year ,int month, int day) {
//this condition is necessary to work properly on all android versions
if(view.isShown()){
//You now have the selected year, month and day
}
}
}, initialYear, initialMonth , initialDay);
//Call show() to simply show the dialog
datePickerDialog.show();
}
Należy pamiętać, że miesiąc jest liczbą rozpoczynającą się od 0 dla stycznia do 11 dla grudnia
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow