2

その後、呼び出しPreferenceActivityてを取得し、条件を確認して、次のように「PreferenceList」から削除します。メソッドの2回目の呼び出しで、もう一度追加する必要がありますが、戻ります。後で追加するために、それを復元するにはどうすればよいですか。 ?を呼び出してPreferenceList "Preference myPrefmyPref = findPreference(..)getPreferenceScreen().removePreference(myPref);PreferencefindPreference(..)nullmyPrefgetPreferenceScreen().addPreference(myPref);

Preference myPref= findPreference( getString( R.string.path_preference ));//return null after removing

        if (condition) {
            if (!pbePathPreferenceRemoved) {
                getPreferenceScreen().removePreference(myPref);
                pbePathPreferenceRemoved = true;
            }
        } else if (pbePathPreferenceRemoved) {
            getPreferenceScreen().addPreference(myPref);
            pbePathPreferenceRemoved = false;
        }
4

1 に答える 1

1

私の解決策は、Preference myPref私のメンバーを作成しPreferenceActivity class、メソッドで1回だけ初期化することonCreate(..)です。その後、それを削除して再度追加できます。

于 2013-03-27T13:44:17.090 に答える