我创建了一个应用程序,用户可以在Calendar.java
活动中选择日历,一旦用户选择此日期,我希望它将此日期放在EditText
字段中名为AddDeadline的活动。目前我有一个日历,一旦用户选择该日期,它就会将它们带到名为AddDeadline.java
的单独活动中,并将日期作为烤面包机。有没有办法当用户选择一个日期时,它会将该日期放入我的AddDeadline.java活动字段中的EditText
。
我的代码是休闲
Calendar.java
CalendarView calendar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_calender);
calendar = (CalendarView) findViewById(R.id.calendarView);
calendar.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) {
Toast.makeText(getApplicationContext(), dayOfMonth+ "/" + month + "/" + year, Toast.LENGTH_LONG).show();
startActivity(new Intent(Calender.this, AddDeadline.class));
}
});
}
AddDeadline.java
public EditText editDate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_deadline);
editDate = (EditText)findViewById(R.id.editText3);
final EditText edate = (EditText) findViewById(R.id.editText3);
edate.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick (View v){
// TODO Auto-generated method stub
//To show current date in the datepicker
Calendar mcurrentDate = Calendar.getInstance();
int mYear = mcurrentDate.get(Calendar.YEAR);
int mMonth = mcurrentDate.get(Calendar.MONTH);
int mDay = mcurrentDate.get(Calendar.DAY_OF_MONTH);
DatePickerDialog mDatePicker;
mDatePicker = new DatePickerDialog(AddDeadline.this, new DatePickerDialog.OnDateSetListener() {
public void onDateSet(DatePicker datepicker, int selectedyear, int selectedmonth, int selectedday) {
// TODO Auto-generated method stub
/* Your code to get date and time */
selectedmonth = selectedmonth + 1;
edate.setText("" + selectedday + "/" + selectedmonth + "/" + selectedyear);
}
}, mYear, mMonth, mDay);
mDatePicker.setTitle("Select Date");
mDatePicker.show();
}
}
);
}
答案 0 :(得分:1)
你可以把数据放到像
这样的意图CalendarView calendar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_calender);
calendar = (CalendarView) findViewById(R.id.calendarView);
calendar.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth) {
Toast.makeText(getApplicationContext(), dayOfMonth+ "/" + month + "/" + year, Toast.LENGTH_LONG).show();
Intent intent = new Intent(Calender.this, AddDeadline.class)
intent.putExtra("date", dayOfMonth+ "/" + month + "/" + year);
startActivity(intent);
}
});
}
通过
在AddDeadline类中获取日期String data = getIntent().getExtras().getString("date");
喜欢
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_deadline);
String data = getIntent().getExtras().getString("date");
editDate = (EditText)findViewById(R.id.editText3);
editDate.setText(date);
}