私はそのような onPreferenceClickListener
私のサブクラスに設定しました:DialogPreference
public class SeekBarDialogPreference extends DialogPreference {
...
public void show() {
onClick();
}
}
public class TopPage extends PreferenceActivity {
...
SeekBarDialogPreference Foo = (SeekBarDialogPreference) findPreference("Foo");
foo.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference pref) {
((SeekBarDialogPreference) pref).show();
return true;
}
});
SeekBarDialogPreference
をクリックすると、showDialog()
とonCreateDialogView(
)がそれぞれ2回呼び出されます。私の質問は、DialogPreference
コンストラクターがデフォルトでクリックリスナーを生成し、コードを冗長にするかどうかです。