古いファッションの好みのスタイル(addPreferencesFromResource()
を使用している)を使用している場合は、onPreferenceTreeClick()
の機能を上書きできます。
モダンフラグメントベースの設定を使用している場合は、onPreferenceStartFragment()
を上書きする必要があります。私はまだこのソリューションをテストしていませんが、ドキュメントによると、これはあなたが探しているものです。
どちらの関数も引数として渡すことができます。設定オブジェクトでは、設定キーを見つけることができます。最初のオプションは私のために働いていましたが、私は昔ながらの男です。
EDIT
フラグメントベースのアクティビティを使用して:あなたは、すべてのアイテムにリスナーをクリックし設定する必要はありません。 PreferenceFragment
クラスのonPreferenceTreeClick()
をオーバーライドするだけです。ここに例があります。
public static class GeneralPreferenceFragment extends PreferenceFragment {
@Override
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
switch (preference.getKey()){
case "key_1":
//Do your stuff
break;
}
return super.onPreferenceTreeClick(preferenceScreen, preference);
}
}
ありがとうございます! @ user1557434私はフラグメントベースの好みを使用しています。または、私は環境設定でsetOnPreferenceClickListenerを行うことができる他の方法がありますか? – akm
答えを更新しました。 – user1557434