I have a problem about object oriented programming. I have a DatePicker and i set the values in the DateSettings.java, and im trying to get data in main activity. And im using eventButton just for testing if i got the data or not. Here gitHub file: https://github.com/azatgoktas/nekadarkaldi
Asked
Active
Viewed 189 times
3 Answers
1
You don't need different java files here. I think you wan't to get the date from a datepicker object. At first create a DatepickeDialog then set the listener. You will get the date in onDateSet() method.
private void showStartDatePicker() {
Calendar startDateCalendar = Calendar.getInstance();
DatePickerDialog datePickerDialog = new DatePickerDialog(getActivity(), startDatePickerListener, startDateCalendar
.get(Calendar.YEAR), startDateCalendar.get(Calendar.MONTH),
startDateCalendar.get(Calendar.DAY_OF_MONTH));
DatePicker datePicker = datePickerDialog.getDatePicker();
datePickerDialog.show();}
Listener for datepicker:
private final DatePickerDialog.OnDateSetListener startDatePickerListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
startDateCalendar.set(Calendar.YEAR, year);
startDateCalendar.set(Calendar.MONTH, monthOfYear);
startDateCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
// your code here
}};

Faruk Toptas
- 1,257
- 14
- 21
0
Mate, there are many ways for transferring data between different Activities. You should've read about it your self, but two most common ways are via Intents and SharedPreferences.
Research a little bit more before you ask more questions, please.
-
So i apologize for my question. Basicly im asking how can i get data from two different java files with using Objects. – Azat Mar 15 '16 at 15:54
-
0
There are many ways to pass your event object to MainActivity. One way could be, create a class like below
public class Example {
// sharedInstance
private static Example sharedInstance = new Example();
// to store/ pass events
ArrayList<Events> eventsArrayList = new ArrayList<>();
// private constructor
private Example() {
}
// get sharedInstance
public static Example getSharedInstance() {
return sharedInstance;
}
public void addToEvents(Events events) {
eventsArrayList.add(events);
}
}
in your DateSettings after you create event object, Example.getSharedInstance().addToEvents(event);
and then in your MainActivity you can get this event object
eventButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//JUST FOR TESTİNG
event = Example.getSharedInstance().eventsArrayList.get(0);
Toast.makeText(getApplicationContext(),event.getDay() + ". day", Toast.LENGTH_SHORT).show();
}
});

Puneet Arora
- 199
- 7
-
This is exactly what i want. But i have one more question. it always turn the value which i selected first. Im adding 3 different date. but it turn which i added first. – Azat Mar 15 '16 at 16:33
-
keep on adding events to eventsArrayList and then you can iterate through the list. for (Events event : eventsArrayList) {// do something with it} – Puneet Arora Mar 15 '16 at 17:06