android studio创建一个Android应用,在布局中添加CalendarView、DatePicker、TimePicker,为用户提供日期选择和时间选择方式,为三个控件添加日期或时间选择变化事件,利用三个TextView分别显示用户设置后的日期和时间,给出详细代码
时间: 2023-06-11 21:04:49 浏览: 179
好的,我会针对您的问题提供答案。以下是基于Android Studio创建的Android应用,实现CalendarView、DatePicker、TimePicker,并显示用户设置后的日期和时间的详细代码。
1. 首先,在布局文件中添加以下代码,用于添加CalendarView、DatePicker和TimePicker控件。
```xml
<CalendarView
android:id="@+id/calendarView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<DatePicker
android:id="@+id/datePicker"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<TimePicker
android:id="@+id/timePicker"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<TextView
android:id="@+id/dateTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
<TextView
android:id="@+id/timeTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
```
2. 接下来,在Java代码中为控件添加事件监听器,并且在事件发生时更新用户选择的日期或时间。以下是详细的Java代码:
```java
public class MainActivity extends AppCompatActivity {
private CalendarView calendarView;
private DatePicker datePicker;
private TimePicker timePicker;
private TextView dateTextView;
private TextView timeTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取控件实例
calendarView = findViewById(R.id.calendarView);
datePicker = findViewById(R.id.datePicker);
timePicker = findViewById(R.id.timePicker);
dateTextView = findViewById(R.id.dateTextView);
timeTextView = findViewById(R.id.timeTextView);
// 设置日期选择变化事件监听器
calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(@NonNull CalendarView view, int year, int month, int dayOfMonth) {
// 更新日期显示TextView
dateTextView.setText(year + "-" + (month + 1) + "-" + dayOfMonth);
}
});
datePicker.setOnDateChangedListener(new DatePicker.OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
// 更新日期显示TextView
dateTextView.setText(year + "-" + (monthOfYear + 1) + "-" + dayOfMonth);
}
});
// 设置时间选择变化事件监听器
timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
@Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
// 更新时间显示TextView
timeTextView.setText(hourOfDay + ":" + minute);
}
});
}
}
```
通过使用以上代码,您可以创建一个Android应用程序,为用户提供日期和时间选择的功能,并分别在三个TextView上显示用户设置后的日期和时间。
阅读全文