Как получить дату с слушателяsetOnDayChangeListener
виджета CalendarView
и сохранить в Post.class
private void iniPopup(){
popupAddPost = new Dialog(this);
popupAddPost.setContentView(R.layout.popup_add_post);
popupAddPost.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
popupAddPost.getWindow().setLayout(Toolbar.LayoutParams.MATCH_PARENT, Toolbar.LayoutParams.WRAP_CONTENT);
popupAddPost.getWindow().getAttributes().gravity = Gravity.TOP;
popupUserImage = popupAddPost.findViewById(R.id.popup_user_image);
popupPostImage = popupAddPost.findViewById(R.id.popup_image);
popupMoney = popupAddPost.findViewById(R.id.popup_money);
popupDescription = popupAddPost.findViewById(R.id.popup_description);
popupAddBtn = popupAddPost.findViewById(R.id.popup_add);
popupClickProgress = popupAddPost.findViewById(R.id.popup_progressBar);
popupCalendar = popupAddPost.findViewById(R.id.popup_calendar);
Glide.with(Home.this).load(currentUser.getPhotoUrl()).into(popupUserImage);
popupCalendar.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(@NonNull CalendarView view, final int year, final int month, final int dayOfMonth) {
**String date = dayOfMonth + "-" + month + "-" + year;**
//как это можно вытащить с слушателя и отправить в Post.class
//массивом пробовал никак
//###
}
});
popupAddBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
popupAddBtn.setVisibility(View.INVISIBLE);
popupClickProgress.setVisibility(View.VISIBLE);
if(!popupMoney.getText().toString().isEmpty() && !popupDescription.getText().toString().isEmpty() && pickedImgUri != null){
StorageReference storageReference = FirebaseStorage.getInstance().getReference().child("blog_images");
final StorageReference imageFilePath = storageReference.child(pickedImgUri.getLastPathSegment());
imageFilePath.putFile(pickedImgUri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
imageFilePath.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
String imageDownloadLink = uri.toString();
//в этот post хочу сохранить в date
//###
Post post = new Post(popupMoney.getText().toString(), popupDescription.getText().toString(), *date*, imageDownloadLink, currentUser.getUid(), currentUser.getPhotoUrl().toString());
addPost(post);
}
});
}
});
}
else{
popupAddBtn.setVisibility(View.VISIBLE);
popupClickProgress.setVisibility(View.INVISIBLE);
}
}
});
}
Примерно вот так:
String date;
private void showDataPickerDialog() {
if (getActivity() != null) {
DatePickerDialog datePickerDialog = new DatePickerDialog(getActivity(), dateSetListener,
dateAndTime.get(Calendar.YEAR),
dateAndTime.get(Calendar.MONTH),
dateAndTime.get(Calendar.DAY_OF_MONTH));
datePickerDialog.show();
}
}
private DatePickerDialog.OnDateSetListener dateSetListener =
new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker view, int year, int month, int day) {
Calendar calendar = Calendar.getInstance();
calendar.set(year, month, day);
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
date = formatter.format(calendar.getTime());
Log.d("TAG", "onDateSet: " + date);
}};
На выходе будет:
onDateSet: 2020-01-04
Или вот так еще можно:
public String getCurrentDay() {
calendar = Calendar.getInstance();
Date tomorrow = calendar.getTime();
SimpleDateFormat dateFormat =
new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault());
return dateFormat.format(tomorrow);
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Помогите пож-та Нужно в поле выбрать значение и чтоб в дрполе подставились его варианты, пример http://prntscr
Имеется контроллер, в котором все методы, кроме одного, доступны только администратору
Друзья, добрый день! Взываю к помощи с многопоточностью в JavaСтоит задача реализовать простейший конвейер, на котором стоят всего два работника...
Я пытаюсь передать Intent из сервиса в MainActivity в BroadcastReciver, но либо интент не передается, либо BroadcastReciver его не принимаетНиже код Activity где я должен...