Android界面上方,左边一个文本框,右边一个按钮1,界面往下还有一个按钮2。单击按钮1,显示一个日期对话框,选择日期并单击该对话框上的ok按钮,对话框消失,在对话框上选择的日期显示在文本框中;单击按钮2,进入界面2,并将界面1上文本框的内容显示在界面2上。
时间: 2024-03-24 22:41:29 浏览: 102
好的,你可以按照以下步骤实现:
1. 在界面1的布局文件中添加一个文本框和两个按钮,如下所示:
```
<EditText
android:id="@+id/editText"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Select Date"/>
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Go to Page 2"/>
```
2. 在界面1的Java文件中,获取文本框和按钮的引用,并为按钮1添加点击事件,如下所示:
```
EditText editText = findViewById(R.id.editText);
Button button1 = findViewById(R.id.button1);
Button button2 = findViewById(R.id.button2);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// 显示日期对话框并在选择日期后将其显示在文本框中
DatePickerDialog datePickerDialog = new DatePickerDialog(FirstActivity.this);
datePickerDialog.setOnDateSetListener(new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker datePicker, int year, int month, int day) {
String date = String.format("%d/%d/%d", year, month + 1, day);
editText.setText(date);
}
});
datePickerDialog.show();
}
});
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// 打开界面2并将文本框的内容传递给它
String text = editText.getText().toString();
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
intent.putExtra("text", text);
startActivity(intent);
}
});
```
3. 在界面2的布局文件中添加一个文本框,如下所示:
```
<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
```
4. 在界面2的Java文件中,获取传递的文本框内容并将其显示在文本框中,如下所示:
```
EditText editText2 = findViewById(R.id.editText2);
String text = getIntent().getStringExtra("text");
editText2.setText(text);
```
这样,当用户在界面1输入文本并单击按钮1选择日期后,在文本框中显示选择的日期。当用户单击按钮2进入界面2时,界面2中的文本框将显示界面1中文本框的内容。
阅读全文