0

我有一個類延伸DialogFragment。我想在這個DialogFragment內調用延伸FragmentActivity的方法。類內的訪問片段活動由DialogFragment擴展

在我的FragmentActivity中,我按照以下方式致電DialogFragment

DialogFragment dialogFragment = new MyDialogFragmentClass(); 
dialogFragment.show(getSupportFragmentManager(), "datePicker"); 

我使用這個DialogFragment來顯示DatePicker。當用戶選擇日期並點擊設置按鈕時,我想調用我的FragmentActivity中的方法。

我該怎麼做?

回答

0
public class MainActivity extends FragmentActivity { 

EditText mEdit; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 

public void selectDate(View view) { 
    DialogFragment newFragment = new SelectDateFragment(); 
    newFragment.show(getSupportFragmentManager(), "DatePicker"); 
} 
public void populateSetDate(int year, int month, int day) { 
    mEdit = (EditText)findViewById(R.id.editText1); 
    mEdit.setText(month+"/"+day+"/"+year); 
} 
public class SelectDateFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener { 
    @Override 
    public Dialog onCreateDialog(Bundle savedInstanceState) { 
     final Calendar calendar = Calendar.getInstance(); 
     int yy = calendar.get(Calendar.YEAR); 
     int mm = calendar.get(Calendar.MONTH); 
     int dd = calendar.get(Calendar.DAY_OF_MONTH); 
     return new DatePickerDialog(getActivity(), this, yy, mm, dd); 
    } 

    public void onDateSet(DatePicker view, int yy, int mm, int dd) { 
     populateSetDate(yy, mm+1, dd); 
    } 
} 

}

//進口所需的軟件包...