2013-11-28 2 views
2

У меня есть DialogPreference, который я открываю из PreferenceActivity. Я хотел бы закрыть PreferenceActivity, когда DialogPreference закрыта. В классе SeekBarPreference проходит DialogPreference, у меня естьReach activity from DialogPreference

@Override 
protected void onDialogClosed(boolean positiveResult) { 


} 

Здесь мне нужна ссылка на SettingsActivity, так что я могу закончить() его.

В comparaison, когда я управлять DialogFragment, я могу использовать обратный вызов метода:

@Override 
public void onAttach(Activity activity) { 
    super.onAttach(activity); 
    parentActivity = ((MapActivity) activity); 
} 

Как я могу сделать, чтобы закрыть мой settingsActivity от DialogPreference ???

Заранее благодарен!

ответ

5

При создании предпочтений диалога вы принимаете контекст правильно?

Затем переведите контекст в действие и завершите вызов.

//Field Variable 
private Context mContext; 

//Your Constructor 
public DialogPreference(Context context){ 
    mContext=context 
} 

@Override 
protected void onDialogClosed(boolean positiveResult) { 
    ((Activity)mContext).finish(); 
} 
+0

Это сработало! Большое спасибо –