Merge "Add ability to set onShowListener to custom dialog pref" into pi-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
c2120a10f7
@@ -28,6 +28,7 @@ import android.view.View;
|
||||
public class CustomDialogPreference extends DialogPreference {
|
||||
|
||||
private CustomPreferenceDialogFragment mFragment;
|
||||
private DialogInterface.OnShowListener mOnShowListener;
|
||||
|
||||
public CustomDialogPreference(Context context, AttributeSet attrs, int defStyleAttr,
|
||||
int defStyleRes) {
|
||||
@@ -54,6 +55,10 @@ public class CustomDialogPreference extends DialogPreference {
|
||||
return mFragment != null ? mFragment.getDialog() : null;
|
||||
}
|
||||
|
||||
public void setOnShowListener(DialogInterface.OnShowListener listner) {
|
||||
mOnShowListener = listner;
|
||||
}
|
||||
|
||||
protected void onPrepareDialogBuilder(AlertDialog.Builder builder,
|
||||
DialogInterface.OnClickListener listener) {
|
||||
}
|
||||
@@ -71,6 +76,10 @@ public class CustomDialogPreference extends DialogPreference {
|
||||
mFragment = fragment;
|
||||
}
|
||||
|
||||
private DialogInterface.OnShowListener getOnShowListener() {
|
||||
return mOnShowListener;
|
||||
}
|
||||
|
||||
public static class CustomPreferenceDialogFragment extends PreferenceDialogFragment {
|
||||
|
||||
public static CustomPreferenceDialogFragment newInstance(String key) {
|
||||
@@ -103,6 +112,13 @@ public class CustomDialogPreference extends DialogPreference {
|
||||
getCustomizablePreference().onBindDialogView(view);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Dialog onCreateDialog(Bundle savedInstanceState) {
|
||||
final Dialog dialog = super.onCreateDialog(savedInstanceState);
|
||||
dialog.setOnShowListener(getCustomizablePreference().getOnShowListener());
|
||||
return dialog;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int which) {
|
||||
super.onClick(dialog, which);
|
||||
|
||||
Reference in New Issue
Block a user