0

我正在开发一个 android 应用程序并在 UI 布局中使用 Fragments。在其中一个片段中,我需要在单击按钮后使用日期时间选择器。我下载了一个示例日期时间选择器应用程序,该应用程序是使用活动中的对话框实现的,但我无法让它在片段中的按钮单击后工作。所以我所做的只是使用在对话框中显示日期时间选择器的意图从该按钮调用日期时间选择器活动。现在,在使用选择器设置日期和时间后,我希望在单击“确定”按钮时返回调用此活动的片段并从文本视图中的选择器更新选定的日期和时间。如何做到这一点?

请注意,日期时间选择器活动与创建片段的活动不同。

4

1 回答 1

1

Fragments 也包含与 Activity 相同的生命周期。

只需从您的日期选择器活动中调用 finish() 方法。您将重定向到最后一个片段,它将调用片段的 onResume()。并将您选择的日期保存在一个静态变量中。

另一种方法:

开始您的日期选择器活动

像下面

int REC_CODE=2;
startActivityForResult(new Intent(this,DataPic.class),REC_CODE);

在选择日期后的 DatePicker 活动中

写下面的代码

Intent i = new Intent();
i.putExtra("date",selecteddate);
setResult(RESULT_OK, i);
finish(); 

通过执行上面的代码,它完成了 DatePick 活动,然后 ovveride 下面的方法。

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) 
{

  // TODO Auto-generated method stub
    if(requestCode == REQ_CODE){
               if (resultCode == Activity.RESULT_OK){
                   String date= data.getStringExtra("date");
}
}
于 2012-10-10T06:25:53.573 回答