我正在使用Eclipse构建一个Android应用程序,我有一个活动,它有2个编辑文本,当我点击它们时,他们会将我重定向到另一个活动,然后我将从CalendarView中选择一个日期,从TimePicker中选择一个时间。之后,我将单击"完成",它会将我重定向回上一个活动,并填充了 EditText。
现在,我的问题是,如何使用从日历视图和时间选择器中选择的日期和时间填充 EditText dd/MMM/yyyy 和 24 小时格式?我尝试使用Intent,但我不知道如何编码。
这是我的部分代码:
public class RentStartActivity extends Activity {
CalendarView calendar1;
TimePicker time1;
Button btnCancel1, btnDone1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_rent_start);
btnCancel1 = (Button) findViewById(R.id.btnCancel1);
btnCancel1.setOnClickListener(new OnClickListener(){
public void onClick(View v){
Intent cancel = new Intent(RentStartActivity.this, SearchActivity.class);
startActivity(cancel);
}
});
btnDone1 = (Button) findViewById(R.id.btnDone1);
btnDone1.setOnClickListener(new OnClickListener(){
public void onClick(View v){
Intent done = new Intent(RentStartActivity.this, SearchActivity.class);
done.putExtra("Date1", calendar1.getDate());
done.putExtra("Time", time1.getDrawingTime());
startActivity(done);
}
});
}
使用startActivityForResult()
在您的搜索活动中:
Intent i = new Intent(this, RentStartActivity.class);
startActivityForResult(i, 1);
在您的 RentStartActivity 中:
btnDone1 = (Button) findViewById(R.id.btnDone1);
btnDone1.setOnClickListener(new OnClickListener(){
public void onClick(View v){
Intent done = new Intent();
done.putExtra("Date1", calendar1.getDate());
done.putExtra("Time", time1.getDrawingTime());
setResult(Activity.RESULT_OK,done);
startActivity(done);
finish();
}
});
并在搜索活动中获取数据:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if(resultCode == Activity.RESULT_OK){
String date = data.getStringExtra("Date1");
String time = data.getStringExtra("Time");
}
if (resultCode == Activity.RESULT_CANCELED) {
//Write your code if there's no result
}
}
}
要格式化日期时间,您可以访问此处。
您可以使用 startActivityForResult(( 和 onActivityResult(( 在活动之间发送数据。
查看此链接:如何在Android上管理"startActivityForResult"?
https://developer.android.com/training/basics/intents/result.html