3

Preference CheckBoxユーザー設定の変更に応じて、リスナーを動的に設定/設定解除する必要があります。

私が見た 1 つのアプローチは、onSharedPreferenceChanged()を使用して、そのチェックボックスのキーを確認することです。

しかし、どういうわけか、これは私には非効率に見えます。から派生したクラスに何らかのリスナーを設定する方向でもっと考えていましたPreferenceActivity。おそらくonContentChanged() ?

どのアプローチをお勧めしますか?その理由は?

サンプルの作業コードを教えてください。

4

2 に答える 2

4

を実装する必要がありますOnSharedPreferenceChangeListener。次に、主要な変更をキャッチするリスナーを設定します。

getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);

チェックした変更を取得できるはずです。

public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,String key) 
{

}
于 2012-06-19T13:05:39.097 に答える
0

これがドキュメントです。XML ファイルを使用して、ウィジェットがクリックされたときに実行されるメソッドを設定できます。設定により、ウィジェットがクリックされたときandroid:onClick = fooにメソッドが実行され、クリックされたビューであるfooパラメータが渡されます。View vv

于 2012-06-19T03:22:45.227 に答える