我找到了以下程序: http://www.android-examples.com/get-selected-date-from-calendarview-in-android/
...
public class MainActivity extends Activity {
CalendarView calender;
TextView textview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
calender = (CalendarView)findViewById(R.id.calendarView1);
textview = (TextView)findViewById(R.id.textView1);
calender.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month,
int dayOfMonth) {
// TODO Auto-generated method stub
textview.setText("Date is : " + dayOfMonth +" / " + (month+1) + " / " + year);
}
});
}
}
该行:
textview.setText("Date is : " + dayOfMonth +" / " + (month+1) + " / " + year);
在屏幕上显示所选日期。
我有什么方法可以获得用户选择并在main activity
中使用它的日期吗?
答案 0 :(得分:0)
您已收到日期详情onSelectedDayChange(CalendarView view, int year, int month,int dayOfMonth)
。
您可以直接在此处使用它,因为您已经在活动中。
答案 1 :(得分:0)
我想你需要在IONotificationPortRef
方法范围之外使用它,为此你可以简单地创建一个具有类级别范围的全局对象,并在调用onSelectedDayChange
之后设置值,如下所示:
onSelectedDayChange
您可以在活动内的任何位置使用public class MainActivity extends Activity {
CalendarView calender;
TextView textview;
TextView textview2;
int selectedYear;
int selectedMonth;
int selectedDay;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
calender = (CalendarView)findViewById(R.id.calendarView1);
textview = (TextView)findViewById(R.id.textView1);
textview2 = (TextView)findViewById(R.id.textView2);
calender.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month,
int dayOfMonth) {
// TODO Auto-generated method stub
selectedYear = year;
selectedMonth = month;
selectedDay = dayOfMonth;
textview.setText("Date is : " + dayOfMonth +" / " + (month+1) + " / " + year);
showSelectedDate(selectedYear, selectedMonth, selectedDay );
}
});
}
public void showSelectedDate(int selectedYear, int selectedMonth, int selectedDay){
textview2.setText("Date is : " + selectedDay +" / " + (selectedMonth +1) + " / " + selectedYear );
}
}
,selectedYear
和selectedMonth
。
答案 2 :(得分:0)
您可以在主活动中创建日,月和年的全局变量,并为onSelectedDayChange侦听器内的变量赋值,因为您可以在整个类中使用这些变量。
答案 3 :(得分:0)
例如: - 字符串日期;
日期= dayOfMonth +“/”+(月+ 1)+“/”+年;
现在您可以在MainActivity类中使用日期。