从PreferenceScreen隐藏/删除ListPreference

时间:2012-03-28 21:20:29

标签: android listpreference preferencescreen

如何在运行时从PreferenceScreen中删除ListPreference? 类似于父行上的setVisibility(Visibility.GONE)。

public class PreferencesActivity extends PreferenceActivity
{
    protected void onConfigurationChanged(ApplicationConfiguration config)
    {
        // ...
        if(config.actualAccounts.sie() < 1)
        {
             ListPreference p = (ListPreference) findPreference("account");
             p.setEnabled(false);
             // here I want to hide it at all
        }
        // ....
    }
 }

1 个答案:

答案 0 :(得分:0)

我很蠢..

final PreferenceScreen preferenceScreen = getPreferenceScreen(); 
// ...
if(config.actualAccounts.sie() < 1)
{
    preferenceScreen.removePreference((ListPreference) findPreference("account"));
}