在一个首选项页面上隐藏首选项按钮

Mar*_*zzi 1 android preferences

我构建了一个首选项xml,我在两个不同的活动页面中用作资源.

唯一的问题是我不希望LOGOUT按钮显示在这两个页面之一(因为用户尚未连接).

我现在做的是:

logoutButton = (Preference)getPreferenceScreen().findPreference("logout");
logoutButton.setEnabled(false);
Run Code Online (Sandbox Code Playgroud)

按钮现在显示为灰色..但是有没有办法让它完全显示?

谢谢!

Car*_*nal 10

如果您的注销按钮(首选项)位于PreferenceScreen中,请执行以下操作:

PreferenceScreen screen = getPreferenceScreen();
Preference logout = findPreference("logout");
screen.removePreference(logout);
Run Code Online (Sandbox Code Playgroud)

否则,如果您的注销按钮(首选项)位于PreferenceCategory(位于PreferenceScreen内),请执行以下操作:

PreferenceCategory category = (PreferenceCategory) findPreference("category_name");
Preference logout = findPrefence("logout");
category.removePreference(logout);
Run Code Online (Sandbox Code Playgroud)